关键词不能为空

位置:爱淘啦励志网 > 经典语录 > 读书附注大全-java的JDK源代码读书顺序整理附注

读书附注大全-java的JDK源代码读书顺序整理附注

作者:车型网
日期:2020-02-16 14:23:59
阅读:

java开发的许多合作伙伴都在读jdk源代码,但不知道该从哪里读。 以下是本人整理好的通常应读的源代码范围。

1、Java.lang1)对象12 )字符串13 ) abstract stringbuilder 14 )字符串缓冲器15 )字符串缓冲器16 )布尔27 )字节28 )双字节29 )浮点210 )集成 short 213 ) thread 214 ) thread local 215 ) enum 316 ) throwable 317 ) error 318 ) exception 319 ) class 420 ) class loader 421 ) compiler 422 ) system 423 ) pack void 412345678910112131415161718192023242、Java.util1) abstract list 12 ) abstract map 13 ) abstractset 14 ) ArrayList 15 )链接列表16 ) hashmma hashset 19 ) linked hashmap 110 ) linked hashset 111 ) treemap 112 ) treeset 113 ) vector 214 )。 队列215 )堆栈216 )有序集217 )有序集218 )集合319 )阵列320 )比较器321 ) iterator 322 ) base 64423 )日期424 ) random 426 ) sublist 427 ) timer 428 ) uuid 429 ) weakahashmap 4123456789101121351525352535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353 3535353535353 Java.util.concurrent1) concurrent hashmap 12 ) executor 23 ) abstractexecutorservice 24 ) executorservice 25 ) thread pool execution blocking queue 27 ) abstractuedsynchronizer 28 ) count down latch 29 ) future task 210 ) sema pore 211 ) cyclicbarrier 213 ) copyonwritearrance synchronous queue 315 ) blocking deque 316 ) callable 4123456789101121314154,Java.util.concurrent.atomic1) atomic boolean 22 ) atomic integer atomicreference312345,Java.lang.reflect1) field 22 ) method 2126,Java.lang.annotation1) annotation 32 ) target 33 ) inherited 34 ) retention 34 ) element type 47 ) native 48 ) repeatable 4123456787,Java.util.concurrent.locks1) lock 22 ) condition 23 ) reentrant lock 24 ) reentrantreadwritelent file 32 ) inputstream 33 ) output stream 34 ) reader 45 ) writer 4123459,Java.nio1) buffer 32 ) bytebuffer 43 ) char buffer 44 )双缓冲器45 ) flow int buffer 47 )长缓冲器48 )短缓冲器41234567810、Java.SQL1)连接32 )驱动器33 )驱动器管理器34 ) JDBC类型35 )结果46 )状态 Java.net1) socket 32 ) server socket 33 ) uri 44 ) URL 45 )读取urlencoder 412345笔记本的简洁版1、Object

wait ( ) notify ( ) notify all ( ) wait ( time out ) hashcode ( ) equals ( ) clone ( ) 2,字串

char[] valueint hashequals ( )、startWith ( )、endWith ( )、replace3和AbstractStringBuilder

char[] valueint count扩展: 2倍,缺少所需的最小4个StringBuffer

继承abstractstringbuildersynchronized方法,确保线程安全的char[]tostring5,stringbuilder继承AbstractStringBuilder

6、ArrayList

Object[] elementDataint size的默认大小为10,可扩展性:1.5倍,缺少所需的最小7个链接列表

节点item,节点prev,节点next } intsizenodefirstnodelastlinkfirst ( )、linkLast ( )、linkBefore ( )、unLinkLast ( )、unLink ( )、indexOf()8、HashMap

节点{ int hash,K key,V value,Node next}默认容量16,负载系数0.75fint size,modCount,threshold, floatloadfactornode [ ] tablesetrentrysetput ( ) :根据key计算hash和根据hash计算索引时,不会将table[index]直接添加到数组中,而是存在table[index],并且索引位置相同的key 否则遍历并更新next,否则重新添加,最后确定是否从thread和size扩展。 注意:扩展时容量会倍增,重新计算hash并复制到新数组7)get ( )类似注意:首先比较hash,如果相等则比较equals9、Hashtable

结构的实现通过与HashMap几乎一致的同步方法请求保证线程安全的10,hashset:hashmap,其Value为相同的默认对象。

11、LinkedHashMap继承HashMap

Entry{HashMap.Node,Entry before,after}Entry head,tail复盖newNode ( )并添加节点时,除非添加到HashMap中,否则before、after信息12、链接的HashSet为HashMap

13、AbstractMap维护EntrySet、AbstractSet维护Iterator、AbstractList维护Iterator

十四、当前地图

JDK1.7和更早版本:根据a、Segment[]、HashEntry[]、HashEntry{hash,k,v,next}b和key计算hash,根据hash和Segment的大小计算位置,并为每个Segment计算自己的HashEntry[] get ( ) :不锁定的volatile类型d,put ( ):e,size ( ) :不锁定每个HashEntry[]的和,返回两次,如果匹配则返回两次,如果不匹配则重新锁定2)JDK1.8a,节点{ hash,key,valles tablec,大多数操作类似于HashMap,使用不同的CAS方法设置,key计算hash,根据hash和容量计算索引,锁定table[index],因此更大的并发量d,get():hashmape,put :锁定table[index]的15,TreeMap1)红黑树,即自平衡二叉树,时间复杂度O(logn)2)Entry{K k,v,Entry parent,left,right,boolean color}3)Entry root,int size,intry

16、treeset :委托treemap的实现

最后,如果大家觉得本论文好的话,关注本头条号,每天与大家分享不同的java技术信息,关于更多笔记的学习资料,私信本头条号: java可以得到!

爱淘啦励志网相关推荐