使用快取提公升頻繁通過反射呼叫方法效能

2021-10-24 05:31:09 字數 512 閱讀 9842

getdeclaredmethod方法返回的method物件其實都是乙個新的物件,且新物件的root屬性都指向原來的method物件,如果需要頻繁呼叫,最好把method物件快取起來。

測試用例

/**

* @desc:

* @author: heling

* @date: 2020/9/2 9:29

*/public class test

}system.out.println(system.currenttimemillis()- start);

long start2 = system.currenttimemillis();

for (int i = 0; i < 100000; i++)

system.out.println(system.currenttimemillis()- start2);

}}

測試結果862

java通過反射呼叫方法

業務中有個場景是這樣的,根據傳入不同的值生成不同的訊息體。這個時候如果用switch或ifelse的話那每一層 都很多,而且不利於維護。於是想到乙個方法,根據傳入的引數呼叫不同的方法 引數即方法 這樣便於維護也利於 的健壯性。如下 示例 先獲取方法,type方法名,this.getclass 引數型...

unity通過反射呼叫方法

using system.reflection using system 1.load 命名空間名稱 gettype 命名空間.類名 type type classname.gettype 需要呼叫的方法名稱 methodinfo method type.getmethod methodfunc 3...

C 通過反射呼叫方法

用反射呼叫方法 常用於軟體架構中 假如你定義好了基類和介面,其他人使用基類派生出新的方法,你在不知道有多少類會使用此基類派生,但是你需要呼叫所有的派生類的方法時,就可以這樣,直接遍歷相同命名空間中的由基類派生的所有類,然後例項化所有類,呼叫所有方法 using system using system...