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 学习个人感觉分为两种途径,第一种是在学校,在培训机构等地方学习. 有人指导:第二种是自学,通过视频,书籍,朋友等完成学习. 本文适合 自学,且基础薄弱或者无基础的人.先介绍下我 ...
随机推荐
- 基于消息队列 RocketMQ 的大型分布式应用上云最佳实践
作者|绍舒 审核&校对:岁月.佳佳 编辑&排版:雯燕 前言 消息队列是分布式互联网架构的重要基础设施,在以下场景都有着重要的应用: 应用解耦 削峰填谷 异步通知 分布式事务 大数据处理 ...
- 记一次排查CPU高的问题
背景 将log4j.xml的日志级别从error调整为info后,进行压测发现CPU占用很高达到了90%多(之前也就是50%,60%的样子). 问题排查 排查思路: 看进程中的线程到底执行的是什么, ...
- glibc memcpy() 源码浅谈
其实我本来只是想搞懂为什么memcpy()函数的参数类型是void *的: 我以为会在memcpy()源码中能找到答案,其实并没有,void *只是在传递参数的时候起了作用,可以让memcpy()接受 ...
- 设计模式--策略模式Strategy
策略模式 算法经常需要被改变==使用S 节省资源(很多if else if-.不会被执行,却会被装载到代码段) 动机 在软件构建过程中,某些对象使用的算法可能多种多样,经常改变,如果将这些算法都编码到 ...
- .NET Core资料精选:架构篇
.NET 6.0 马上就要发布,高性能云原生开发框架.希望有更多的小伙伴加入大.NET阵营.这是本系列的第三篇文章:架构篇,喜欢的园友速度学起来啊. 本系列文章,主要分享一些.NET Core比较优秀 ...
- Charles抓包 mock数据和rewrite功能
一.mock数据 mock:在后端返回异常或需要=改前端展示的数据时可以模拟返回的response 1.1 抓到接口后 右击保存response到本地,后缀改成.json打开可以看到是把json保存下 ...
- Java学习(八)
今天学了类的封装知识与编译器的使用,和c++的大体一致,只有一些细节不同,像private的使用等. 小试牛刀,写了一个封装后的类,并且测试. public class Student { priva ...
- 3组-Alpha冲刺-1/6
一.基本情况 队名:发际线和我作队 组长博客:链接 小组人数:10 二.冲刺概况汇报 黄新成(组长) 过去两天完成了哪些任务 文字描述 组织会议,讨论了alpha冲刺的分工,确定了收集数据的渠道,为拍 ...
- Django 小实例S1 简易学生选课管理系统 2 新建项目(project)并进行设置
Django 小实例S1 简易学生选课管理系统 第2节--新建项目(project)并进行设置 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 0 ...
- C#练习4
//错误的程序using System; class Test { unsafe static void WriteLocations(byte[]arr) { fixed(byte*p_arr=ar ...