询问下各位,今天本来想看下并发的源码,先Research了下,说Java8里面对于并发有了很大的变动,于是下载了jdk-8u20,并下载了对应的api文档(绝对是官方的),名为jdk-8u20-docs-all文件夹。最初定位到ConcurrentHashMap这个类,发现里面很多内部类,如static class Segment<K,V>和static class Traverser<K,V>等很多内部类和final的内部类都没有在api里面体现,弱弱的问下,这个是不是我找的有问题,是不是应该体现在ConcurrentHashMap这个类的Nested Classes这里面?
是的,1.5之后就有了,但是后面的每个jdk版本都会有关于这个类优化的改动,我想分析下里面的源码,但是里面的
static final class Segment<K,V> extends ReentrantLock implements Serializable {................}
和static final class HashEntry<K,V> {....................}这些都应该属于内部类的,但是为何没有呈现在api里面呢,1.6的api我刚看了,
每个api里面都有Nested Class Summary这个,内部类的说明,但是这些在api里面都没有说明,不知道这个是为什么
是的,1.5之后就有了,但是后面的每个jdk版本都会有关于这个类优化的改动,我想分析下里面的源码,但是里面的
static final class Segment<K,V> extends ReentrantLock implements Serializable {................}
和static final class HashEntry<K,V> {....................}这些都应该属于内部类的,但是为何没有呈现在api里面呢,1.6的api我刚看了,
每个api里面都有Nested Class Summary这个,内部类的说明,但是这些在api里面都没有说明,不知道这个是为什么
Maintaining API and serialization compatibility with previous
versions of this class introduces several oddities. Mainly: We
leave untouched but unused constructor arguments refering to
concurrencyLevel. We accept a loadFactor constructor argument,
but apply it only to initial table capacity (which is the only
time that we can guarantee to honor it.) We also declare an
unused "Segment" class that is instantiated in minimal form
only when serializing.
是的,1.5之后就有了,但是后面的每个jdk版本都会有关于这个类优化的改动,我想分析下里面的源码,但是里面的
static final class Segment<K,V> extends ReentrantLock implements Serializable {................}
和static final class HashEntry<K,V> {....................}这些都应该属于内部类的,但是为何没有呈现在api里面呢,1.6的api我刚看了,
每个api里面都有Nested Class Summary这个,内部类的说明,但是这些在api里面都没有说明,不知道这个是为什么
是的,1.5之后就有了,但是后面的每个jdk版本都会有关于这个类优化的改动,我想分析下里面的源码,但是里面的
static final class Segment<K,V> extends ReentrantLock implements Serializable {................}
和static final class HashEntry<K,V> {....................}这些都应该属于内部类的,但是为何没有呈现在api里面呢,1.6的api我刚看了,
每个api里面都有Nested Class Summary这个,内部类的说明,但是这些在api里面都没有说明,不知道这个是为什么
是的,1.5之后就有了,但是后面的每个jdk版本都会有关于这个类优化的改动,我想分析下里面的源码,但是里面的
static final class Segment<K,V> extends ReentrantLock implements Serializable {................}
和static final class HashEntry<K,V> {....................}这些都应该属于内部类的,但是为何没有呈现在api里面呢,1.6的api我刚看了,
每个api里面都有Nested Class Summary这个,内部类的说明,但是这些在api里面都没有说明,不知道这个是为什么
Maintaining API and serialization compatibility with previous
versions of this class introduces several oddities. Mainly: We
leave untouched but unused constructor arguments refering to
concurrencyLevel. We accept a loadFactor constructor argument,
but apply it only to initial table capacity (which is the only
time that we can guarantee to honor it.) We also declare an
unused "Segment" class that is instantiated in minimal form
only when serializing.