对象创建流程 JVM 创建一个对象的总体流程如下图所示: 下面分别对这几个部分详细介绍: 一、常量池检查和类加载 在 Java 程序运行时,当虚拟机首次遇到 new 指令尝试创建类的实例时,首先将去检查这个指令的参数是否能在常量池中定位到这个类的符号引用,接着使用运行时常量池中的符号引用来检查所需的类是否已经被加载、链接和初始化。如果发现类尚未加载…
本篇文章对 JVM 方法区的历史迭代做了总结,明确了对 JDK1.8 中不同常量池位置的理解!
从源码理解ThreadLocal,并学习用到的散列算法——斐波那契散列法
一、String的构造方法 可不只是 String a = "abc"; 和 String a = new String("abc"); 阅读 String 源码,发现 String 提供了很多种构造方法,这里列出常用的几种: public String(String original){} public String(char value[…