更新時(shí)間:2020-05-06 12:13:55 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2255次
要理解反射首先要理解特性的概念,因?yàn)榉瓷渫ǔP枰@取用戶自定義屬性。
特性(Attribute)
概念:用于在運(yùn)行時(shí)傳遞程序中各種元素(類(lèi),方法等)的行為信息的聲明性標(biāo)簽。
聲明方法:在它所應(yīng)用的元素(類(lèi),方法等)面前防止方框號(hào)([]),ig.[SayHelloAttribute]。
主要作用:對(duì)應(yīng)用的元素添加元數(shù)據(jù),程序可以使用反射檢查獲取自己的元數(shù)據(jù)或者其它元素內(nèi)的元數(shù)據(jù)。
可以這么理解元數(shù)據(jù)的概念:程序集中所有關(guān)于聲明類(lèi)的數(shù)據(jù)信息(成員函數(shù),屬性,方法調(diào)用)等都儲(chǔ)存在元數(shù)據(jù)里面(pdb文件)。
二、概念
反射:指程序可以訪問(wèn)、檢測(cè)和修改它本身狀態(tài)或行為的一種動(dòng)作。
作用:通過(guò)反射,可以在運(yùn)行時(shí)獲取指定程序集(dll集合)每一個(gè)類(lèi)型(包括類(lèi)、結(jié)構(gòu)、委托、接口等)的成員(方法、事件、屬性等)。
三、用途
反射可以作用在程序集上,程序集包含模塊,模塊包含類(lèi)型,類(lèi)型又包含成員,反射可以對(duì)封裝程序集、模塊、類(lèi)以及成員進(jìn)行操作。通常,使用反射動(dòng)態(tài)的創(chuàng)建類(lèi)型的實(shí)例,將類(lèi)型綁定到現(xiàn)有對(duì)象(或從現(xiàn)有對(duì)象獲取類(lèi)型),然后調(diào)用類(lèi)型的方法。
最常見(jiàn)用途如下:
1、使用Assembly定義和加載程序集,并提取指定的類(lèi)型集合。
如下所示,加載"ReflectionTest.exe",提取程序中有“HelloAttribute"屬性的類(lèi)。
2、使用MethodInfo了解方法的名稱(chēng),返回類(lèi)型,參數(shù)以及實(shí)現(xiàn)信息。
3、實(shí)例化對(duì)象,調(diào)用方法
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“深入了解Java反射調(diào)用方法”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)