更新時(shí)間:2020-04-30 11:12:51 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2451次
JAVA反射機(jī)制是在運(yùn)行狀態(tài)中,對(duì)于任意一個(gè)實(shí)體類(lèi),都能夠知道這個(gè)類(lèi)的所有屬性和方法;對(duì)于任意一個(gè)對(duì)象,都能夠調(diào)用它的任意方法和屬性;這種動(dòng)態(tài)獲取信息以及動(dòng)態(tài)調(diào)用對(duì)象方法的功能稱(chēng)為java語(yǔ)言的反射機(jī)制。
1.意義
首先,反射機(jī)制極大的提高了程序的靈活性和擴(kuò)展性,降低模塊的耦合性,提高自身的適應(yīng)能力。
其次,通過(guò)反射機(jī)制可以讓程序創(chuàng)建和控制任何類(lèi)的對(duì)象,無(wú)需提前硬編碼目標(biāo)類(lèi)。
再次,使用反射機(jī)制能夠在運(yùn)行時(shí)構(gòu)造一個(gè)類(lèi)的對(duì)象、判斷一個(gè)類(lèi)所具有的成員變量和方法、調(diào)用一個(gè)對(duì)象的方法。
最后,反射機(jī)制是構(gòu)建框架技術(shù)的基礎(chǔ)所在,使用反射可以避免將代碼寫(xiě)死在框架中。
正是反射有以上的特征,所以它能動(dòng)態(tài)編譯和創(chuàng)建對(duì)象,極大的激發(fā)了編程語(yǔ)言的靈活性,強(qiáng)化了多態(tài)的特性,進(jìn)一步提升了面向?qū)ο缶幊痰某橄竽芰?
2.原理
反射機(jī)制(Reflection)是Java提供的一項(xiàng)較為高級(jí)的功能,它提供了一種動(dòng)態(tài)功能,而此功能的體現(xiàn)在于通過(guò)反射機(jī)制相關(guān)的API就可以獲取任何Java類(lèi)的包括屬性、方法、構(gòu)造器、修飾符等信息。元素不必在JVM運(yùn)行時(shí)進(jìn)行確定,反射可以使得它們?cè)谶\(yùn)行時(shí)動(dòng)態(tài)地進(jìn)行創(chuàng)建或調(diào)用。反射技術(shù)在中間件領(lǐng)域應(yīng)用得較多。
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java基礎(chǔ)學(xué)習(xí):java反射機(jī)制原理”的內(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í)