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 学习个人感觉分为两种途径,第一种是在学校,在培训机构等地方学习. 有人指导:第二种是自学,通过视频,书籍,朋友等完成学习. 本文适合 自学,且基础薄弱或者无基础的人.先介绍下我 ...
随机推荐
- 什么是SimpleNVR流媒体服务器软件?
SimpleNVR是一款新兴流媒体服务器应用软件,占用内存少,无插件.跨平台,应用非常广泛,操作简单易上手,同时还支持一键观看,十分便捷.另外,跟其他一般流媒体服务器不同,SimpleNVR支持开发者 ...
- git删除未被追踪的文件
# 先看看会删掉哪些文件,防止重要文件被误删 git clean -n # 删除 untracked files git clean -f # 连 untracked 的目录也一起删掉 git cle ...
- vue配置请求拦截器和响应拦截器
首先确保我们已经设置的store.js进行值的存取,这时候我们需要配置请求和响应的拦截器设置 main.js import Vue from 'vue' import App from './App' ...
- mysql 存储ipv6
自定义列 https://groups.google.com/g/sqlalchemy/c/lZw0GipVYFw https://docs.sqlalchemy.org/en/14/core/cus ...
- SVN错误:Attempted to lock an already-locked dir svn: Working copy locked
VN错误:Attempted to lock an already-locked dir update D:/workspace20/SC_200/metadata -r 3398 --force ...
- Part 15 AngularJS ng init directive
The ng-init directive allows you to evaluate an expression in the current scope. In the following e ...
- Django笔记&教程 1-2 二 常用配置
Django 自学笔记兼学习教程第1章第2节--二 常用配置 点击查看教程总目录 新手建议简单浏览本文,不理解的建议跳过,不要强行理解. Django的设置涉及多个模块,需要了解Django的一些相关 ...
- 大爽Python入门教程 0-2 什么是IDE?python选什么IDE好?
大爽Python入门公开课教案 点击查看教程总目录 一 感受IDE 什么是IDE? 在这里,我并不想直接给出一个回答, 因为这个回答对初学者来说,可能有些抽象. 我想先带大家感受下IDE. 1 比较不 ...
- 【linux系统】命令学习(二)文件处理命令
查看帮助 1.--help 例如:ls --help 会有中文 2.man 例如:man ls 都是英文 进入手册的界面 空格键:向下翻页 回车:一行一行翻页 B:向前翻页 ...
- Nginx通过ngx_http_limit_req_module实现限制请求数、限速、白名单
/etc/nginx/limit/white_list:白名单,key-value形式,支持掩码网段 #test 192.168.50.42 0; 192.168.50.0/24 0; /etc/ng ...