ClassLoader
.
JVM结束生命周期
1. System.exit(0) 正常退出
System.exit(-1) 非0异常退出
2. 正常运行结束
3. 发现异常或错误退出
4. 操作系统退出
class二进制文件的加载过程
1. class二进制文件加载到内存
2. 连接
A. 验证文件的正确性,防止恶意修改
B. 类的静态成员设为默认值,即int(0) , boolean(false), Object(null)
C. 解析,即把类中的符号引用转换成直接的引用(指针,内存地址)
3. 静态初始化: 静态变量初始化为正确的值(即静态初始化代码段里的语句)
主动使用
1. Test t = new Test() ;
2. 使用了静态变量: Test.A ;
3. 使用了静态方法 Test.do() ;
4. 反射出一个对象 Object t = Class.forName(“Test”);
5. New 了Test的子类
6.