类的加载

类的加载方式

  1.New

  2.Class.forName() 通过反射加载

  3.调用某个ClassLoader的实例的loadClass()方法

  1是静态加载,2、3是动态加载

 

 

类的加载过程

1.加载

  (1) 通过类名加载二进制字节流

  (2) 将字节流的静态存储结构转化为运行时数据结构

  (3) 生成java.lang.Class对象

2.链接

  (1) 验证

    ① 文件格式验证

    ② 元数据验证

    ③ 字节码验证

    ④ 符号引用验证

  (2) 准备:为静态变量分配内存并初始化为默认值

  (3) 解析

3.初始化:执行类中定义的Java程序代码

4.使用:JVM从入口方法执行代码  

5.卸载:JVM销毁创建的Class对象

posted @ 2020-08-11 21:03  雨下_整夜  阅读(86)  评论(0编辑  收藏  举报