jvm
孤云
这个作者很懒,什么都没留下…
展开
-
JVM类加载过程
类加载机制: 虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被Java虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。 类加载的生命周期: 1.加载:通过一个类的全名来获取定义此类的二进制字节流,并将这些静态数据转换成方法区中的运行时数据结构,在堆中生成一个代表这个类的java.lang.Class对象,作为方法区类...原创 2019-01-06 11:36:19 · 205 阅读 · 2 评论 -
Java双亲委派模型
1.什么是类加载器? 虚拟机设计团体把类加载阶段中的"通过一个类的全限定名来获取描述此类文件的二进制字节流",这个动作方法Java虚拟机外部去实现,以便让应用才程序自已决定如何获取所需要的类。实现这个 动作的代码模块称为“类加载器”。 2.类加载器: 启动类加载器(BootStarap ClassLoader):启动类是由C++实现的,负责将存放在<JAVA_HOME>\lib目...原创 2019-01-06 11:56:18 · 763 阅读 · 0 评论 -
Java类初始化的时机
1.当虚拟机启动时,加载用户指定的main方法所在的类。 2.当在main方法遇到了new关键字时,初始化new指令的目标类。 3.当遇到静态方法调用时,初始化静态方法所在的类。 4.当遇到静态变量调用时,初始化静态变量所在的类。 5.子类的初始化时会先触发父类的初始化。 6.使用反射调用某个类时,会初始化该类。 7.如果一个类直接实现或者间接实现该接口的类的初始化,会触发该接口的初始...原创 2019-01-06 12:20:13 · 236 阅读 · 0 评论