随笔分类 -  Java

摘要:1 底层数据结构 数组(主体) + 链表(解决哈希冲突) 2 实现原理 HashMap 的主干是一个Entry数组,初始值是一个空数组 {}。 Entry是HashMap的基本组成单元,每一个Entry包含一个 key-value 键值对。 HashMap 整体结构 Entry源码 HashMap源 阅读全文
posted @ 2018-07-28 20:21 starinbrook 阅读(304) 评论(0) 推荐(0)
摘要:一般来说,我们把类加载过程分为三个主要步骤:加载、链接、初始化。 加载:是指查找字节流,并且据此创建类的过程。 Java 虚拟机借助类加载器来完成查找字节流的过程。 启动类加载器(Bootstrap Class-Loader),加载jre/lib下面的jar文件,如rt.jar。 扩展类加载器(Ex 阅读全文
posted @ 2018-07-25 09:37 starinbrook 阅读(152) 评论(0) 推荐(0)
摘要:重写 equals,同时需要重写 hashCode,原因要从 equals 和 hashCode 方法的作用说起。 equals 的作用:判断两个对象是否相等。 hashCode 的作用:获取对象的哈希码,也称散列码,就是一个 int 整数。 而哈希码的作用是确定对象在哈希表中的索引位置。 当我们创 阅读全文
posted @ 2018-07-24 17:50 starinbrook 阅读(227) 评论(0) 推荐(0)