public class ReflectTest {
/**
* 获取Class的实例的方式
*/
@Test
public void test() throws ClassNotFoundException {
//方式一:调用运行时类的属性:.class
Class<Person> clazz1 = Person.class;
System.out.println(clazz1);
//方式二:通过运行时类的对象,调用getClass()
Person person = new Person();
Class<? extends Person> clazz2 = person.getClass();
System.out.println(clazz2);
//方式三:调用Class的静态方法:forName(String classPath) 能更好的体现反射的动态性
Class<?> clazz3 = Class.forName("com.wkt.demo.Person");
System.out.println(clazz3);
//方式四:通过类加载器 ClassLoader
ClassLoader classLoader = ReflectTest.class.getClassLoader();
Class<?> clazz4 = classLoader.loadClass("com.wkt.demo.Person");
System.out.println(clazz4);
}
}
获取Class实例的四种方式
最新推荐文章于 2022-03-10 19:21:17 发布