javaSE 类加载器,反射,字节码文件对象(类的Class对象)


参考学习:https://blog.csdn.net/sinat_38259539/article/details/71799078
当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。
加载
就是指将class文件读入内存,并为之创建一个Class对象(字节码对象)。由类加载器创建。
任何类被使用时系统都会建立一个Class对象
连接
验证 是否有正确的内部结构,并和其他类协调一致
准备 负责为类的静态成员分配内存,并设置默认初始化值
解析 将类的二进制数据中的符号引用替换为直接引用
初始化
new 该类对象。程序员可以控制这个初始化过程。


【javaSE 类加载器,反射,字节码文件对象(类的Class对象)】反射:

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
要想解剖一个类,必须先要获取到该类的字节码文件对象(类的Class对象)。


    推荐阅读