一、创建Class对象有3种方式
- 类名.class
- 实例.getClass()
- Class.forName(“类的全路径”)
二、创建Class对象有3种方式示例
1、代码示例
package com.xz.springboottest.day1;
public class Person {private String name;private int age;
}
package com.xz.springboottest.day1;
public class PersonTest {public static void main(String[] args) throws ClassNotFoundException {Class personClass1= Person.class;System.out.println("通过类.class方式创建Class对象:"+personClass1);Person person = new Person();Class personClass2 = person.getClass();System.out.println("通过实例.getClass()方式创建Class对象:"+personClass2);Class personClass3 = Class.forName("com.xz.springboottest.day1.Person");System.out.println("通过Class.forName(\"类的全路径\")方式创建Class对象:"+personClass3);System.out.println(personClass1==personClass2);System.out.println(personClass1==personClass3);}
}
2、输出结果如下所示
3、解释
- 由输出结果可知,我们已经获得了Class对象了,那么我们就可以使用这个Class对象,来使用反射的方式,创建我们需要的实例对象了。
- 这三种方式没有什么太大的区别,根据具体使用场景,进行选择使用即可。