Java基础
文章平均质量分 94
Zoro1451
这个作者很懒,什么都没留下…
展开
-
浅谈Java中对象的==、equals和hashCode
浅谈Java中的==、equals和hashCode运算符 ==equals()StringIntegerLonghashCode() 运算符 == Java中的==是比较两个对象在JVM中的地址。 @Test public void compareAddress() { String str1 = "Hello World!&am原创 2018-12-28 23:42:11 · 231 阅读 · 0 评论 -
聊聊Java的常量池
Java中的常量池,实际上分为两种形态:静态常量池和运行时常量池。 静态常量池 class文件中的常量池,class文件中的常量池不仅仅包含字符串(数字)字面量,还包含类、方法的信息,占用class文件绝大部分空间。 运行时常量池 JVM虚拟机在完成类装载操作后,将class文件中的常量池载入到内存中,并保存在方法区中,我们常说的常量池,就是指方法区中的运行时常量池。 网络上流行的常量池例子 ...原创 2018-12-28 14:42:00 · 345 阅读 · 2 评论 -
探究Java自动拆装箱与Cache
目录什么是拆装箱JVM是如何实现拆装箱聊聊IntegerCache其他包装类型的Cache 什么是拆装箱 拆装箱是Java1.5引入的新特性,它是基本数据类型与包装类型的互相转化。 装箱:基本数据类型 => 包装类型 拆箱:包装类型 => 基本数据类型 JVM是如何实现拆装箱 一般情况下我们是不需要自己手动做拆装箱操作的,JVM会自动帮我们做。那么JVM究竟是怎么做的呢?我们通过例子去...原创 2018-12-30 11:48:54 · 258 阅读 · 0 评论 -
static final和final static有区别吗?
没有区别 Java同时用final和static修饰一个变量的时候,并没有严格要求它们的顺序,也就是说static final和final static在使用效果上是没有区别的。 但是一般static final这个书写顺序更加让人所接受,static说明它属于类本身的,final说明它不可被修改,包括JDK源码里也是采用这个顺序。 就像声明一个整型数组可以用int[] array,也可以用int...原创 2019-01-02 14:30:58 · 8507 阅读 · 0 评论 -
源码分析之HashMap
HashMap是我们最常用的集合结构之一原创 2019-01-07 16:17:11 · 226 阅读 · 0 评论