通常在我們使用C#時趣斤,對象的屬性進行賦值或者取值時會使用到反射-“System.Reflection”。
反射:在程序運行時黎休,動態(tài)獲取程序集浓领,類型(class,interface)和類型的成員信息(方法势腮,字段联贩,屬性等)。在程序運行時嫉鲸,動態(tài)創(chuàng)建 類型實例撑蒜, 以及調(diào)用和方法動態(tài)創(chuàng)建出來的類型實例的成員。
程序集
但由于反射的機制玄渗,當我們在對對象集合使用反射進行GET座菠,SET的時候會消耗大量時間,從而引進“字典”來改善這一問題:
第一步:聲明所謂的字典“Hashtable”
private static readonly Hashtable dic = Hashtable.Synchronized(new Hashtable());
第二步:構(gòu)造“SET”or"GET"方法:
Set:
Get:
第三步:將“PropertyInfo”添加到字典中:
(1)
(2)
(3)
以上便是通過“字典”的方式來加速對象的反射藤树,詳細代碼可以訪問我的Github浴滴。