package JavaReflcet;import org.junit.Test;public class ClassTest {/*获取Class的实例的方式*/@Testpublic void test1() throws ClassNotFoundException {
// 方式一:调用运行时类的属性: .classClass clazz = person.class;System.out.println(clazz);// 方式2:通过运行时类的对象person p1 = new person();Class<? extends person> clazz2 = p1.getClass();System.out.println(clazz2);// 方式3:调用Class的静态方法:forName(String classPath)Class clazz3 =Class.forName("JavaReflcet.person");System.out.println(clazz3);// 方式4:使用类的加载器:ClassLoaderClassLoader classLoader = ReflactionTest.class.getClassLoader();Class<?> clazz4 = classLoader.loadClass("JavaReflcet.person");System.out.println(clazz4);}
}
person的运行时类可以看作单例:
clazz == clazz2 //true
clazz2== clazz3 //true