這篇文章主要介紹“java的反射機(jī)制有什么作用”的相關(guān)知識(shí),小編通過實(shí)際案例向大家展示操作過程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“java的反射機(jī)制有什么作用”文章能幫助大家解決問題。
我們提供的服務(wù)有:成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、永州ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的永州網(wǎng)站制作公司
1、作用說明
(1)通過反射,程序代碼可以訪問裝載在JVM中的內(nèi)部信息。
(2)獲取裝載類的成員變量信息。
(3)獲得裝載類的方法。
(4)獲取裝載類的結(jié)構(gòu)方法信息。
2、實(shí)例
在運(yùn)行過程中,判斷一個(gè)類的成員變量和方法。
Class ownerClass = owner.getClass():得到該對(duì)象的Class。 Field field = ownerClass.getField(fieldName):通過Class得到類聲明的屬性。 Object property = field.get(owner): 通過對(duì)象得到該屬性的實(shí)例,如果這個(gè)屬性是非公有的,這里會(huì)報(bào)IllegalAccessException。 在運(yùn)行時(shí)調(diào)用一個(gè)對(duì)象的方法: Method method = ownerClass.getMethod(methodName, argsClass): 通過Method名和參數(shù)的Class數(shù)組得到要執(zhí)行的Method。 method.invoke(owner, args):執(zhí)行該Method,invoke方法的參數(shù)是執(zhí)行這個(gè)方法的對(duì)象,和參數(shù)數(shù)組。 返回值是Object,也既是該方法的返回值。
關(guān)于“java的反射機(jī)制有什么作用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。