javaAPI1
Iterable<T>接口, Iterator<T> iterator()
Collection<E>:接口,add(E e) ,size() , Object[] toArray()
List<E>:接口,get(int index) ,Iterator<E> iterator() ,ListIterator<E> listIterator()
ArrayList<E>:类,
CopyOnWriteArrayList<E>:接口,
LinkedList<E>:不是同步的,getFirst(),getLast()
Vector<E>:接口,大小可以根据需要增大或缩小。
Stack<E>:接口,后进先出(LIFO),peek() ,pop() ,push(E item)
Queue<E>:接口,offer(E e) 优于add(e)
Deque<E>:接口,一个线性 collection,支持在两端插入和移除元,双端队列
BlockingQueue<E>:接口, 不接受 null 元素,线程安全,
BlockingDeque<E>:接口,
Set<E>:最多包含一个 null 元素
SortedSet<E>:接口,headSet(E toElement) ,subSet(E fromElement, E toElement)
NavigableSet<E>:接口,扩展的 SortedSet,具有了为给定搜索目标报告最接近匹配项的导航方法。
方法 lower、floor、ceiling 和 higher 分别返回小于、小于等于、大于等于、大于给定元素的元素,
TreeSet<E>:类,不是同步的,基于 TreeMap 的 NavigableSet 实现
HashSet<E>:类,基于hash的快速元素插入,元素间无顺序
java.util.LinkedHashSet<E>:类,基于hash的快速元素插入,同时维护着元素插入时的先后顺序,先进先出
Map<K,V>:接口, Set<K> keySet() ,int size() ,Collection<V> values() ,Set<Map.Entry<K,V>> entrySet()
SortedMap<K,V>:接口
TreeMap :类
EnumMap<K extends Enum<K>,V>:类,与枚举类型键一起使用的专用 Map 实现。
HashMap<K,V>:类
Hashtable<K,V>:类,同步的
TreeMap<K,V>:类,基于红黑树(Red-Black tree)的 NavigableMap 实现,不是同步的
WeakHashMap :类
ConcurrentHashMap<K,V>:类,此类与 Hashtable 相似,但与 HashMap 不同,它不 允许将 null 用作键或值,不必加锁。 --------------------------------------------------------------------------------------------------------------------
线程池
Executor:接口,执行已提交的 Runnable 任务的对象,不必为每一个任务显式地创建一个线程,execute(Runnable command)
ExecutorService:接口,submit(Runnable task) ,invokeAll(Collection<? extends Callable<T>> tasks)
ScheduledExecutorService:接口,延迟创建任务,
ThreadPoolExecutor:类,是一个线程池,可以对线程进一步配置(重在扩展)
ScheduledThreadPoolExecutor:类,
Executors:类,扮演着线程池工厂的角色,定义了一些返回Executor、ExecutorService、ScheduledExecutorService、ThreadFactory、Callable的方法
Runnable:接口,
Future:接口,表示异步计算的结果,cancel(boolean mayInterruptIfRunning),get() ,isDone()
ScheduledFuture<V>:接口,
RunnableFuture:接口
FutureTask<V>类,可取消的异步计算,可使用 FutureTask 包装 Callable 或 Runnable 对象。
因为 FutureTask 实现了 Runnable,所以可将 FutureTask 提交给 Executor 执行。
RunnableScheduledFuture<V>接口,
Callable<V>:接口,类似于 Runnable,两者都是为那些其实例可能被另一个线程执行的类设计的。
但是 Runnable 不会返回结果,并且无法抛出经过检查的异常。V call()
ThreadFactory:接口,根据需要创建新线程的对象,Thread newThread(Runnable r) ------------------------------------------------------------------------------------------------------------------
NIO
Channel:接口,通道,表示表示到实体,如硬件设备、文件、网络套接字或可以执行一个或多个不同 I/O 操作(如读取或写入)的程序组件的开放的连接。
SelectableChannel:类,register(Selector sel, int ops),keyFor(Selector sel)
ByteChannel
DatagramChannel
FileChannel
Pipe
ServerSocketChannel
SocketChannel Selector:类,SelectableChannel 对象的多路复用器。open(),keys(),select(),selectedKeys()
SelectionKey:表示 SelectableChannel 在 Selector 中的注册的标记。OP_WRITE,isReadable() ,SelectableChannel channel()
javaAPI1的更多相关文章
- 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)
前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...
- Object有哪些公用方法?
protected Object clone() 创建并返回此对象的一个副本.public boolean equals(Object obj) 指示其他某个对象是否与此对象"相等" ...
- jni.h头文件详解二
作者:左少华 博客:http://blog.csdn.net/shaohuazuo/article/details/42932813 转载请注明出处:http://blog.csdn.net/shao ...
- 【转】 jni.h头文件详解(二)
原文网址:http://blog.csdn.net/shaohuazuo/article/details/42932813 作者:左少华 博客:http://blog.csdn.net/shaohua ...
- wxWidgets刚開始学习的人导引(4)——wxWidgets学习资料及利用方法指导
wxWidgets刚開始学习的人导引全文件夹 PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...
- Java Socket与操作系统的关系
Socket与操作系统有什么关系呢?请细读下文 简介 TCP简介 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议 ...
- 多线程爬坑之路-ThreadLocal源码及原理的深入分析
ThreadLocal<T>类:以空间换时间提供一种多线程更快捷访问变量的方式.这种方式不存在竞争,所以也不存在并发的安全性问题. This class provides thread-l ...
- JAVA 通过 Socket 实现 TCP 编程
简介 TCP简介 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机 ...
- 零基础如何自学java开发?
开篇直奔主题,java 学习个人感觉分为两种途径,第一种是在学校,在培训机构等地方学习. 有人指导:第二种是自学,通过视频,书籍,朋友等完成学习. 本文适合 自学,且基础薄弱或者无基础的人.先介绍下我 ...
随机推荐
- mysql查看数据库大小
要想知道每个数据库的大小的话,步骤如下: 1.进入information_schema 数据库(存放了其他的数据库的信息) use information_schema; 2.查询所有数据的大小: s ...
- Oracle四大语言DDL DML DCL TCL
DDL(数据定义语言) creater 创建数据表 ceater table 表名 (); alter 修改表结构 添加字段:alter table 表名 add 列名 数据类型 null 删除字段: ...
- PTA 最小堆插入元素和删除堆顶(无哨兵元素) (20分)
PTA 最小堆插入元素和删除堆顶(无哨兵元素) (20分) 对于给定的最小堆(优先队列),分别实现插入元素和删除堆顶的函数. 函数接口定义: int insertIntoHeap(struct Hea ...
- feign微服务调用携带浏览器信息(header、cookie)
import feign.RequestInterceptor; import feign.RequestTemplate; import org.apache.commons.collections ...
- dart系列之:dart类中的构造函数
目录 简介 传统的构造函数 命名构造函数 构造函数的执行顺序 重定向构造函数 Constant构造函数 工厂构造函数 总结 简介 dart作为一种面向对象的语言,class是必不可少的.dart中所有 ...
- Python如何格式化输出
目录 Python中的格式化输出 1.旧格式化 2.新格式format( ) 函数 Python中的格式化输出 格式化输出就是将字符串中的某些内容替换掉再输出就是格式化输出 旧格式化输出常用的有%d( ...
- Springboot 加载配置文件源码分析
Springboot 加载配置文件源码分析 本文的分析是基于springboot 2.2.0.RELEASE. 本篇文章的相关源码位置:https://github.com/wbo112/blogde ...
- javascript-初级-day07
day01-运算符 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type&quo ...
- Redis概述以及Linux安装
Redis 概述 Redis是什么 Redis,Remote Dictionary Server,远程字典服务.是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.key-v ...
- AtCoder Beginner Contest 188题解
A 题意 问\(x,y\)相差是否小于\(3\) #include<iostream> #include<cstdio> #include<cmath> #defi ...