Java源码系列(JDK1.8)
Java源码系列(JDK1.8),略读
空空dream
这个作者很懒,什么都没留下…
展开
-
【JDK1.8源码阅读】关于集合你应该了解的
ArraylistVectorLinkedListHashSetLinkedHashSetTreeSetHashMapLinkedHashMapHashtableTreeMap数据结构Object数组Object数组双向链表底层采用 HashMapLinkedHashSet 继承于 HashSet其内部通过 LinkedHashMap 实现红黑树...原创 2020-03-30 18:08:17 · 122 阅读 · 0 评论 -
【JDK1.8源码阅读】HashSet.class(完)
JDK1.8源码阅读HashSet.class继承内置元素如何添加一个元素如何删除一个元素你应该了解:1、源码阅读顺序(建议):hashtable→hashmap→hashset2、new HashMap<>(Math.max((int) (c.size() / .75f) + 1, 16));每一个参数的含义3、如何插入和删除一个元素4、线程不安全继承Hash...原创 2020-03-29 19:44:33 · 134 阅读 · 0 评论 -
【JDK1.8源码阅读】关于HashMap你应该知道的
JDK1.8源码阅读HashMap.classHashMap数据结构hashmap数据增删的处理逻辑如何增加节点如何删除节点技术细节(你应该知道的)treeifyBin链表如何转化为红黑树为什么要扩容HashMap的长度为什么要是2的n次方为什么会需要hashmaphashmap在JDK历史版本中的改动原因参考:建议:学习关键是效率,先上B站找hash算法和红黑树算法的视频初步了解,事半功...原创 2020-03-28 22:02:54 · 210 阅读 · 0 评论 -
【JDK1.8源码阅读】Hashtable.class(完)
JDK1.8源码阅读Hashtable.class祖先和兄弟祖先Dictionary兄弟MapHashtable祖先和兄弟祖先Dictionary继承Dictionary<K,V>,本是抽象的key、value。内部全是抽象变量。public abstractclass Dictionary<K,V> { public Dictionary() { ...原创 2020-03-28 04:53:46 · 118 阅读 · 0 评论 -
【JDK1.8源码阅读】ArrayList.class(完)
//List.javapublic interface List<E> extends Collection<E>//Collection.javapublic interface Collection<E> extends Iterable<E>//Iterable.javapublic interface Iterable<T...原创 2020-03-24 17:49:32 · 241 阅读 · 0 评论 -
【Java关键字】abstract抽象
Java关键字abstractabstract类abstract方法抽象类和接口比较语法层面上的区别设计层面上的区别两者使用上的联系抽象类就是为了继承(重写)而存在的。如果定义了一个抽象类却不继承,那是没有任何用处的。当然,在继承之后,之类必须对父类中所有没有实现的方法进行实现,否则是不被允许的(除非是抽象类继承的抽象类,此时可以不实现)。abstract类有抽象方法的类,必须是抽象类...原创 2020-03-23 11:33:39 · 127 阅读 · 0 评论 -
【JDK1.8源码阅读】StringBuffer与StringBuilder对比(完)
StringBuffer与StringBuilder对比变量差异方法差异StringBuffer append(String str)StringBuilder append(String str)StringBuffer reverse()StringBuilder reverse()StringBuffer toString()StringBuilder toString()StringBuf...原创 2020-03-23 03:00:37 · 274 阅读 · 0 评论 -
【Java关键字】super对比this
Java关键字super创建测试文件调试注解(执行步骤)执行结果创建测试文件ThisAndSuper.classpackage test;public class ThisAndSuper { public static void main(String[] args) { City c = new City(); c.value(); }}Country.classp...原创 2020-03-23 01:48:11 · 78 阅读 · 0 评论 -
【Java】equals和==的区别
前置说明:equals和==的区别Java 语言里的 equals方法其实是交给开发者去覆写的,让开发者自己去定义满足什么条件的两个Object是equal的。==equals判断两个变量或实例是不是指向同一个内存空间判断两个变量或实例所指向的内存空间的值是不是相同对内存地址进行比较对字符串的内容进行比较引用是否相同值是否相同...原创 2020-03-19 18:05:47 · 148 阅读 · 1 评论 -
【JDK1.8源码阅读】AbstractStringBuilder.class(完)
代码分析抽象类abstract class AbstractStringBuilder implements Appendable, CharSequence内部有抽象方法,所以必须定义为抽象类。@Override public abstract String toString();变量value存储字符串,String底层也是一样的储存原理;count统计字符串长度,用于扩容。 c...原创 2020-03-23 15:39:28 · 100 阅读 · 0 评论 -
【JDK1.8源码阅读】String.class注释及测试
String.class注释及测试Class String源码(部分)源码注释测试类测试类注解代码注意参考前置说明:equals和==的区别Java 语言里的 equals方法其实是交给开发者去覆写的,让开发者自己去定义满足什么条件的两个Object是equal的。参考:https://blog.csdn.net/lglglgl/article/details/104973047Clas...原创 2020-03-20 11:07:16 · 148 阅读 · 0 评论 -
【JDK1.8源码阅读】String.class
–原创 2020-03-20 16:04:47 · 265 阅读 · 0 评论