反射之獲取屬性、構造方法、成員方法:
阿新 • • 發佈:2018-12-17
**前戲:**反射都需要用到.class位元組碼檔案,獲得.class位元組碼檔案的方法: 1、物件.getClass(); 2、通過反射得到: 1、類名.class;(開發中少用) 2、Class.forName(“包名.類名”); 1、獲取構造方法: 1、得到所有構造方法(包括公有、私有),返回的是一個數組: 類變數.getDeclaredConstructors(); 2、得到所有公有的構造方法: 類變數.getConstrustors(); 3、得到一個公有的構造方法,並且使其被呼叫: 1、類變數.getConstrustor(); 2、得到一個物件,利用構造方法的變數.newInstance() 3、輸出這個物件即可。 4、得到一個私有的構造方法,並使其被呼叫: 1、類變數.getDeclaredConstructor(int.class);//這裡如果呼叫有參方法就放對應引數即可 2、暴力反射,利用構造方法的變數.setAccessible(true); 3、得到一個物件,利用構造方法的變數.newInstance(12);//引數裡放對應的具體值 4、輸出這個物件即可。 2、獲取屬性: