20161019

来源:互联网 发布:uml画图软件 编辑:程序博客网 时间:2024/05/21 21:40
类加载的时机
  • 主动引用引起加载:new,引用static属性,引用static方法,反射,main方法,加载父类
  • 被动引用不加载,通过子类引用父类static变量,通过数组,引用常量
类加载顺序
  • 加载,连接(验证,准备,解析),初始化,使用,卸载
加载
  • 获得class二进制,加载到方法区,生成class对象
  • 数组对象不需要加载,jvm直接生成
验证
准备
  • static变量设0值
  • final常量直接设初始值
解析
  • 符号引用变为直接引用
初始化
  • clinit

类加载器
  • 四层结构:引导类加载器,扩展类加载器,应用类加载器,自定义加载器
  • 双亲委派机制:为了保证相同的类被相同的加载器加载,jvm认为即使相同的类被不同的加载器加载也是不同的类
  • 非双亲委派机制
0 0
原创粉丝点击