获得类对象的三中方法:
- Class.forName("全类名") 方式; 【全类名:包名+类名】
- 类名.class 方式;
- 对象.getClass() 方式;
参考代码:
public class Test {
public static void main(String[] args) throws Exception {
Class class1 = Class.forName("demo1.Person");
System.out.println(class1);
Class class2 = Person.class;
System.out.println(class2);
Person person = new Person();
Class class3 = person.getClass();
System.out.println(class3);
System.out.println(class1==class2);
System.out.println(class1==class3);
System.out.println(class2==class3);
}
}
执行结果:
这三种方式都适用情况:
- Class.forName("全类名") 方式:
多用于配置文件,将类名定义在配置文件中。读取文件,加载类;【spring的配置文件中有所应用】
- 类名.class 方式:
多用于类对象作为参数,进行参数传递
- 对象.getClass() 方式: