C#反射的優(yōu)缺點(diǎn)是什么-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比霍州網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式霍州網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋霍州地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。

小編給大家分享一下C#反射的優(yōu)缺點(diǎn)是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

C# 反射(Reflection)

反射指程序可以訪問、檢測和修改它本身狀態(tài)或行為的一種能力。

程序集包含模塊,而模塊包含類型,類型又包含成員。反射則提供了封裝程序集、模塊和類型的對象。

您可以使用反射動(dòng)態(tài)地創(chuàng)建類型的實(shí)例,將類型綁定到現(xiàn)有對象,或從現(xiàn)有對象中獲取類型。然后,可以調(diào)用類型的方法或訪問其字段和屬性。

優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

1、反射提高了程序的靈活性和擴(kuò)展性。
2、降低耦合性,提高自適應(yīng)能力。
3、它允許程序創(chuàng)建和控制任何類的對象,無需提前硬編碼目標(biāo)類。

缺點(diǎn):

1、性能問題:使用反射基本上是一種解釋操作,用于字段和方法接入時(shí)要遠(yuǎn)慢于直接代碼。因此反射機(jī)制主要應(yīng)用在對靈活性和拓展性要求很高的系統(tǒng)框架上,普通程序不建議使用。
2、使用反射會(huì)模糊程序內(nèi)部邏輯;程序員希望在源代碼中看到程序的邏輯,反射卻繞過了源代碼的技術(shù),因而會(huì)帶來維護(hù)的問題,反射代碼比相應(yīng)的直接代碼更復(fù)雜。

反射(Reflection)的用途

反射(Reflection)有下列用途:

  • 它允許在運(yùn)行時(shí)查看特性(attribute)信息。
  • 它允許審查集合中的各種類型,以及實(shí)例化這些類型。
  • 它允許延遲綁定的方法和屬性(property)。
  • 它允許在運(yùn)行時(shí)創(chuàng)建新類型,然后使用這些類型執(zhí)行一些任務(wù)。

查看元數(shù)據(jù)

我們已經(jīng)在上面的章節(jié)中提到過,使用反射(Reflection)可以查看特性(attribute)信息。

System.Reflection 類的 MemberInfo 對象需要被初始化,用于發(fā)現(xiàn)與類相關(guān)的特性(attribute)。為了做到這點(diǎn),您可以定義目標(biāo)類的一個(gè)對象,如下:

System.Reflection.MemberInfo info = typeof(MyClass);

本文名稱:C#反射的優(yōu)缺點(diǎn)是什么-創(chuàng)新互聯(lián)
本文路徑:http://muchs.cn/article22/coegjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、軟件開發(fā)、網(wǎng)站改版、做網(wǎng)站動(dòng)態(tài)網(wǎng)站、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營