摘要: 6.1、类加载器介绍 类加载器用来把类的.class文件加载到java虚拟机中。从JDK1.2版本开始,类的加载过程采用“双亲委托机制”,这种机制能更好的保证java平台的安全。在“双亲委托机制”中,各个加载器按照父子关系(实际是一种包含关系)形成了树形结构,除了java虚拟机自带的根类加载器外,其 阅读全文
posted @ 2020-02-20 00:32 java小天地 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 5.1、接口初始化规则 在了解接口的初始化规则前,先搞清类的初始化规则。 当java虚拟机初始化一个类时,会先初始化它的所有父类。但是这条规则并不适用于接口。 在初始化一个类时,并不会先初始化它所实现的接口; 在初始化一个接口时,并不会先初始化它的父接口; 使用一句话总结:实现类或者子接口的初始化并 阅读全文
posted @ 2020-02-19 23:08 java小天地 阅读(644) 评论(0) 推荐(0) 编辑
摘要: 访问常量是否会引起类的初始化,关键要看常量的值是否在编译期间可以确定。 1)如果常量的值可以在编译期间确定(编译期常量),则访问该常量时不会引起常量所在类的初始化; 如:public static final String a = "parent"; 原因:常量的值在编译期间可以确定,则在编译阶段就 阅读全文
posted @ 2020-02-18 18:04 java小天地 阅读(513) 评论(0) 推荐(0) 编辑
摘要: 3.1、类的加载 类的加载指的是将类的class文件中的二进制数据读入到内存中,将其放置在运行时数据区的方法区内,然后在内存中创建一个java.lang.Class对象(规范并未说明Class对象放在哪里,HotSpot虚拟机将其放在了方法区中),用来封装类在方法区内的数据结构。 注意:一个类不管创 阅读全文
posted @ 2020-02-18 17:59 java小天地 阅读(523) 评论(0) 推荐(0) 编辑
摘要: 简介: 1)在java代码中,【类型】的加载、连接与初始化过程都是在程序【运行期间】完成的 类型:如我们定义的类、接口、枚举,并不涉及到对象的概念; 加载:将已经编译好的class字节码文件从磁盘中加载到内存里面; 连接:将类与类之间的关系确定好,对于字节码的处理在加载连接阶段完成;类与类之间的调用 阅读全文
posted @ 2020-02-18 17:50 java小天地 阅读(340) 评论(0) 推荐(0) 编辑
摘要: jvm工具 jvm常用监控工具 1)、java监视和管理控制台 打开方式:命令窗口输入 jconsole 2)、java VisualVM 打开方式:命令窗口输入 jvisualvm 阅读全文
posted @ 2020-02-18 17:42 java小天地 阅读(155) 评论(0) 推荐(0) 编辑