1.java文件由编译器编译成字节码class。
2.class文件由JVM解释运行,分为两个步骤:类的加载、类的执行。
类的加载:指JVM将class文件从本地硬盘读入内存,并为之创建一个Class对象,任何类被使用时系统都会建立一个Class对象。
3.类加载的时机(只加载一次)
以下时机仅表示第一次的时候
① 创建类的实例的时候
② 访问类的静态变量的时候
③ 调用类的静态方法的时候
④ 使用反射方式来强制创建某个类或接口对应的java.lang.Class对象
⑤ 初始化某个类的子类的时候
⑥ 直接使用java.exe命令来运行某个主类
参考来源:https://blog.csdn.net/u012834750/article/details/70834735
4.反射的操作都是编译之后的操作,本质理解是得到class对象后,反向获取对象的各种信息。
5.静态加载类和动态加载类的区别
参考来源:https://blog.csdn.net/minwenping/article/details/69367469?utm_source=itdadao&utm_medium=referral