反射
1:类对象和它的三种获取方式
1.1 通过对象.getClass()方法
//能直接得到这个类的对象,就可以使用这种方法来通过对象获取
Person p = new Person();
Class cls1 = p.getClass();
1.2.通过类名.class 来获取字节码对象
//当前类与这个类在一块(同包),可以使用这种方法
Person p = new Person();
Class cls2 = Person.class;
//.class在jvm中只有一个,所以相等
System.out.println(cls1 == cls2);//true
1.3.通过静态方法来获取对象
//只知道这个类的类全名是,可以使用这种方法获取
try {
//通过一个类的类全名获取字节码对象
Class cls3 = Class.forName("package com.qianfeng.zjh.am.fanshe.Person");
System.out.println(cls1 == cls3); //true
}
2:通过反射获取构造器与对象实例
import java.lang.reflect.Constructor;
public class Demo2 {
//一个一个精准获取
public static void main(String[] args)