c Invoke反射簡單舉例

2021-06-10 23:07:21 字數 896 閱讀 4182

//在例子1種必須例項化反射要反射的類,因為要使用的方法並不是靜態方法。

//建立物件例項

obj = ass.createinstance("reflectiontest.writetest"); //執行帶引數的公共方法

method.invoke(obj, parametors); 

parametors);//異常:必須例項化反射要反射的類,因為要使用的方法並不是靜態方法。

/**//*example2----------*/ 

method = type.getmethod("staticwritestring"); 

method.invoke(null, new string ); //第乙個引數忽略//對於第乙個引數是無視的,也就是我們寫什麼都不會被呼叫,

//即使我們隨便new了乙個any這樣的object,當然這種寫法是不推薦的。

//但是對應在例子1種我們如果invoke的時候用了型別不一致的例項來做為引數的話,將會導致乙個執行時的錯誤。

method.invoke(obj, new string );

method.invoke(any, new string );

/**//*example3-----------*/ 

method = type.getmethod("noneparawritestring"); //呼叫無引數靜態方法的例子,這時候兩個引數我們都不需要指定,用null就可以了。method.invoke(null, null);  } 

}從上面的總結中可以看出,對於外部呼叫的動態庫應用反射時要用到assembly.loadfile(),然後才是獲取型別、執行方法等;

當用反射建立當前程式集中物件例項或執行某個類下靜態方法時只需通過type.gettype("類的完整名")。

FrameSet 簡單舉例

這幾天做乙個html的demo原型。考慮到靜態頁面比較簡單,因此沒有好好規劃就開動了。結果。左邊的導航欄把偶折磨的快 了。每個畫面都要貼乙份 的拷貝。將近70個頁面呢。哭死。而且中間還改了好幾個版本。乙個乙個的貼。眼淚嘩嘩的!main frame.html的內容 top frame.html的內容 ...

回溯法簡單舉例

回溯法的核心思想 從一條路往前走,能進則進,不能進則退回來,換一條路再試。letter combinations of a phone number 題目描述 字串的排列輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,ac...

反射 基於反射的簡單工廠

得到type的幾種方法 1.0通過typeof方法得到type type t1 typeof form1 2.0根據物件得到type person p new person type t2 p.gettype 3.0根據程式集得到對應的type assembly ass assembly.load ...