
2.7.6.2. 并发标记 .............................................................................................................................................. 34
2.7.6.3. 重新标记 .............................................................................................................................................. 34
2.7.6.4. 并发清除 .............................................................................................................................................. 34
2.7.7. G1
收集器
.................................................................................................................................... 34
2.8. JAVA IO/NIO ....................................................................................................................................... 34
2.8.1.
阻塞
IO
模型
................................................................................................................................ 34
2.8.2.
非阻塞
IO
模型
............................................................................................................................ 35
2.8.3.
多路复用
IO
模型
........................................................................................................................ 35
2.8.4.
信号驱动
IO
模型
........................................................................................................................ 36
2.8.5.
异步
IO
模型
................................................................................................................................ 36
2.8.1. JAVA IO
包
.................................................................................................................................. 36
2.8.2. JAVA NIO .................................................................................................................................... 37
2.8.2.1. NIO 的缓冲区 ..................................................................................................................................... 38
2.8.2.2. NIO 的非阻塞 ..................................................................................................................................... 38
2.8.3. Channel ....................................................................................................................................... 40
2.8.4. Buffer ............................................................................................................................................ 40
2.8.5. Selector ........................................................................................................................................ 40
2.9. JVM 类加载机制 ................................................................................................................................. 41
2.9.1.1. 加载 .......................................................................................................................................................... 41
2.9.1.2. 验证 .......................................................................................................................................................... 41
2.9.1.3. 准备 .......................................................................................................................................................... 41
2.9.1.4. 解析 .......................................................................................................................................................... 41
2.9.1.5. 符号引用 .............................................................................................................................................. 42
2.9.1.6. 直接引用 .............................................................................................................................................. 42
2.9.1.7. 初始化 ...................................................................................................................................................... 42
2.9.1.8. 类构造器<client> .............................................................................................................................. 42
2.9.2.
类加载器
...................................................................................................................................... 42
2.9.2.1. 启动类加载器(Bootstrap ClassLoader) ......................................................................................... 43
2.9.2.2. 扩展类加载器(Extension ClassLoader) .......................................................................................... 43
2.9.2.3. 应用程序类加载器(Application ClassLoader): .......................................................................... 43
2.9.3.
双亲委派
...................................................................................................................................... 43
2.9.4. OSGI
(动态模型系统)
............................................................................................................ 44
2.9.4.1. 动态改变构造 ...................................................................................................................................... 44
2.9.4.2. 模块化编程与热插拔 .......................................................................................................................... 44
3. JAVA 集合 ............................................................................................................................................ 45
3.1. 接口继承关系和实现 .......................................................................................................................... 45
3.2. LIST ....................................................................................................................................................... 47
3.2.1. ArrayList
(数组)
....................................................................................................................... 47
3.2.2. Vector
(数组实现、线程同步)
............................................................................................... 47
3.2.3. LinkList
(链表)
......................................................................................................................... 47
3.3. SET ....................................................................................................................................................... 48
3.3.1.1. HashSet(Hash 表) ............................................................................................................................. 48
3.3.1.2. TreeSet(二叉树) ................................................................................................................................ 49
3.3.1.3. LinkHashSet(HashSet+LinkedHashMap) ................................................................................... 49
3.4. MAP ....................................................................................................................................................... 50
3.4.1. HashMap
(数组
+
链表
+
红黑树)
............................................................................................. 50
3.4.1.1. JAVA7 实现 ............................................................................................................................................. 50
3.4.1.2. JAVA8 实现 ............................................................................................................................................. 51
3.4.2. ConcurrentHashMap.................................................................................................................. 51
3.4.2.1. Segment 段 .............................................................................................................................................. 51
3.4.2.2. 线程安全(Segment 继承 ReentrantLock 加锁) .............................................................................. 51
3.4.2.3. 并行度(默认 16) ................................................................................................................................. 52
3.4.2.4. Java8 实现 (引入了红黑树) .............................................................................................................. 52
评论