1mport j**a.lang.reflect.constructor;
2import
j**a.lang.reflect.method;34
5public
class
callmethod else
);33
system.out
34 .println("constructor 的 newinstance() 方法建立帶引數的testclass例項: "
35 +objecta.tostring());36}
37}3839
40//
獲取所有方法
41 method methods =testclass.getmethods();
42//
獲取某個特定的無引數的方法
43 method saddmethod1 = testclass.getmethod("sadd", null
);44 method addmethod1 = testclass.getmethod("add", null
);45
//獲取某個特定的有引數的方法
46 method saddmethod2 = testclass.getmethod("sadd", new
class );
48 method addmethod2 = testclass.getmethod("add", new class );
5051
52//
呼叫不帶引數的靜態方法
53int result = ((integer) saddmethod1.invoke(null, null
)).intvalue();
54 system.out.println("呼叫不帶引數的靜態方法sadd: " +result);
55//
呼叫帶引數的靜態方法
56 result = ((integer) saddmethod2.invoke(null, new
object )).intvalue();
58 system.out.println("呼叫帶引數30, 70的靜態方法sadd: " +result);
5960
61 objecta =(testclass) testclass.newinstance();
62//
呼叫不帶引數的例項方法
63 result = ((integer) addmethod1.invoke(objecta, null
)).intvalue();
64 system.out.println("呼叫不帶引數的例項方法add: " +result);
65//
呼叫帶引數的例項方法
66 result = ((integer) addmethod2.invoke(objecta, new
object )).intvalue();
68 system.out.println("呼叫帶引數130, 170的例項方法add: " +result);
6970
//不能訪問私有方法
71//
method sub = testclass.getmethod("sub", null);
72//
system.out.println(sub.invoke(objecta, null));73}
7475
//測試類
76class
testclass
88//
帶引數的構造方法
89public testclass(int a, int
b) 93
94//
靜態方法,實現add功能
95public
static
intsadd()
98public
static
int sadd(int a, int
b) 101
//例項方法,實現add功能
102public
intadd()
105public
int add(int a, int
b) 108
public
string tostring()
111//
私有方法
112private
intsub()
115}
116 }
C 通過反射類動態呼叫DLL方法
個人覺得 反射 就是能按照規定 微軟.net 動態訪問特定程式集中物件的工具.網上找的 例子 使用反射方 using system using system.collections.generic using system.linq using system.text using system.re...
使用反射呼叫類靜態方法
呼叫靜態的方法 assembly asm assembly.load infosystem 命名空間 type t asm.gettype infosystem.sqlquery 命名空間加型別名稱 sqlquery sqlquery t.invokemember getinstance bindi...
C 通過反射呼叫類及方法
反射有個典型的應用,就是選單的動態載入,原理就是通過反射呼叫某個窗體 類 下面演示python基礎教程 一下通過反射呼叫類及方法 1 新建乙個類,命名為 reflectionhelper,如下 region 建立物件例項 建立物件例項 物件型別 程式集名稱 命名空間 類名 public static...