首页 > 代码库 > 获取 Class 类实例的4种方式

获取 Class 类实例的4种方式

由于唯一性,所以并没有说“创建”
  1. public class TestClass {
  2. public static void main(String[] args) throws ClassNotFoundException {
  3. // 通过运行时类本身的.class静态属性(隐藏的)来获取
  4. Class<Person> clazz1 = Person.class;
  5. System.out.println(clazz1);// class com.cdf.reflection.Person
  6. // 通过运行时类对象的 getClass() 方法(隐藏的)来获取
  7. Person p = new Person();
  8. Class<Person> clazz2 = (Class<Person>) p.getClass();
  9. System.out.println(clazz2);// class com.cdf.reflection.Person
  10. // 通过 Class 类的静态方法传入类的全名来获取
  11. Class clazz3 = Class.forName("com.cdf.reflection.Person");
  12. System.out.println(clazz3);// class com.cdf.reflection.Person
  13. // 4.通过类的加载器
  14. ClassLoader classLoader = new TestClass().getClass().getClassLoader();
  15. Class clazz4 = classLoader.loadClass("com.cdf.reflection.Person");
  16. System.out.println(clazz4);// class com.cdf.reflection.Person
  17. }
  18. }

获取 Class 类实例的4种方式