您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān).net中什么是反射,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
反射是.net中非常有用的特性。
可以用一句話來(lái)概括就是:基于程序集和元數(shù)據(jù),可以動(dòng)態(tài)創(chuàng)建某個(gè)類型的實(shí)例,調(diào)用方法,和訪問(wèn)對(duì)象成員的一種能力。
在編譯時(shí)無(wú)法確定要調(diào)用的對(duì)象的時(shí)候,就不得不使用反射。
最常見(jiàn)的應(yīng)用場(chǎng)景有:
1,基于工廠模式實(shí)現(xiàn)的數(shù)據(jù)庫(kù)切換。
2,ORM框架,因?yàn)樗鎸?duì)的是通用的模型,所有的屬性或方法都是動(dòng)態(tài)生成的。
3,基于插件的系統(tǒng),在完全不知道外部插件究竟是什么東西的情況下,是一定無(wú)法在編譯期確定的,因此會(huì)使用反射進(jìn)行加載。
由于反射是基于程序集和元數(shù)據(jù)的,所以有必要解釋一下什么是程序集,什么時(shí)元數(shù)據(jù)。
程序集:程序集是所有類型的集合,編譯后生成PE文件(例如可執(zhí)行文件.exe和類庫(kù)文件.dll)。
元數(shù)據(jù):元數(shù)據(jù)是程序集中的一部分,主要包含了名稱,版本,語(yǔ)言文化和公鑰標(biāo)記等信息。
關(guān)于“.net中什么是反射”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。