Java反射機(jī)制詳解

1反射機(jī)制是什么

反射機(jī)制是在運(yùn)行狀態(tài)中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調(diào)用它的任意一個方法和屬性;這種動態(tài)獲取的信息以及動態(tài)調(diào)用對象的方法的功能稱為java語言的反射機(jī)制。

2反射機(jī)制能做什么

反射機(jī)制主要提供了以下功能:

在運(yùn)行時判斷任意一個對象所屬的類;

在運(yùn)行時構(gòu)造任意一個類的對象;

在運(yùn)行時判斷任意一個類所具有的成員變量和方法;

在運(yùn)行時調(diào)用任意一個對象的方法;

生成動態(tài)代理。

3反射機(jī)制的相關(guān)API

3.1通過一個對象獲得完整的包名和類名


3.2實例化Class類對象


3.3獲取一個對象的父類與實現(xiàn)的接口


3.4獲取某個類中的全部構(gòu)造函數(shù) - 詳見下例

?通過反射機(jī)制實例化一個類的對象


3.5獲取某個類的全部屬性


3.6獲取某個類的全部方法


3.7通過反射機(jī)制調(diào)用某個類的方法

3.8通過反射機(jī)制操作某個類的屬性



3.9反射機(jī)制的動態(tài)代理


4反射機(jī)制的應(yīng)用實例

4.1在泛型為Integer的ArrayList中存放一個String類型的對象。


4.2通過反射取得并修改數(shù)組的信息


4.3通過反射機(jī)制修改數(shù)組的大小


4.4將反射機(jī)制應(yīng)用于工廠模式


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 接下來我們將介紹Java反射機(jī)制的一系列的知識。本篇文章主要針對Java反射機(jī)制的介紹以及反射API的使用知識。 ...
    Ruheng閱讀 7,629評論 3 65
  • 前言 Java反射機(jī)制很早的時候就有耳聞,期間也會去看看相關(guān)資料,但是又很快會忘記,所以,寫一篇Blog來加深記憶...
    Android_Simon閱讀 910評論 0 1
  • 寫在前面的話:很多人會說我直接new一個對象不就完了么,干嘛還用反射來獲取對象。因為new屬于靜態(tài)編譯,而反射屬于...
    iDaniel閱讀 8,764評論 1 4
  • Java反射機(jī)制 JAVA反射機(jī)制是在運(yùn)行狀態(tài)中,對于任意一個類,都能夠知道這個的所有屬性和方法;對于任意一個對象...
    才兄說閱讀 7,380評論 0 10
  • 1.業(yè)務(wù)類型表API 2.幣種表API 3.關(guān)區(qū)業(yè)務(wù)關(guān)系表API 4.關(guān)區(qū)代碼表API 5.系統(tǒng)參數(shù)表API 6....
    cltclt閱讀 180評論 0 0

友情鏈接更多精彩內(nèi)容