java反射機制——三種獲取class物件的方法
阿新 • • 發佈:2018-11-09
package cn.itcast.reflect.demo; import cn.itcast.bean.demo.Person; /** * * 獲取Class物件的3中方法: * * * */ public class ReflectDemo1 { public static void main(String[] args) throws ClassNotFoundException { // getClassObjectMethod_1(); // getClassObjectMethod_2(); getClassObjectMethod_3(); } /* * 方法三:通過給定的類名的字串名稱就可以獲取class物件,更為擴充套件 * * */ public static void getClassObjectMethod_3() throws ClassNotFoundException { String classname="cn.itcast.bean.demo.Person"; Class class1=Class.forName(classname); Class class2=Class.forName(classname); System.out.println(class1==class2); } /* * 方法二:任何資料型別都具備一個靜態屬性.class來獲取Class物件 * 相對簡單,但是還是要明確到類中的靜態成員,還是不夠擴充套件 * */ public static void getClassObjectMethod_2() { Class class1=Person.class; Class class2=Person.class; System.out.println(class1==class2); } /*方法一: * 通過Object類中的getClass方法 * 想用這種方式,必須明確具體的類 * * */ public static void getClassObjectMethod_1() { Person p=new Person(); Class class1=p.getClass(); Person p2=new Person(); Class class2=p2.getClass(); System.out.println(class1==class2); } }