最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

學(xué)習(xí)記錄之Java反射機(jī)制

2022-08-20 15:49 作者:星月襲空  | 我要投稿

java反射機(jī)制

反射是java中的動(dòng)態(tài)機(jī)制,它允許我們?cè)诔绦蜻\(yùn)行期間再確定類的實(shí)例化,方法的調(diào)用,屬性的調(diào)用等,而不是傳統(tǒng)意義上的在編碼期間確定。

因此,反射可以大大的提高代碼的靈活度,但是隨之而來的是更多的系統(tǒng)開銷和較慢的運(yùn)行速度,因此不能過度的依賴反射。

Class類

Class的每一個(gè)實(shí)例用于表示JVM加載的一個(gè)類,所以我們也稱Class的實(shí)例?為類的類象。?當(dāng)JVM加載一個(gè)類時(shí)會(huì)同時(shí)實(shí)例化一個(gè)Class的實(shí)例與之對(duì)應(yīng),這個(gè)Class實(shí)例?中會(huì)保存該類的一切信息(類名,有哪些方法,構(gòu)造器,屬性,注解等等)?我們?cè)诔绦蜻\(yùn)行期間通過某個(gè)類的類對(duì)象來操作這個(gè)類。因此使用反射操作某個(gè)?類的第一件事就是獲取該類的類對(duì)象

獲取一個(gè)類的類對(duì)象有三種方式:

  • 1:類名.class 例如: Class cls = String.class; Class cls = int.class (基本類型只能通過這種方式獲取類對(duì)象)

  • 2:Class.forName(String className) 通過Class的靜態(tài)方法forName,傳入對(duì)應(yīng)類的完全限定名(包名.類名)的 形式獲取類對(duì)象 Class cls = Class.forName("java.lang.String");

  • 3:通過類加載器ClassLoader加載類對(duì)象

使用反射機(jī)制進(jìn)行對(duì)象的實(shí)例化

Class提供的方法:

Object newInstance()

該方法可以使用其表示的類的無參構(gòu)造器進(jìn)行對(duì)象實(shí)例化

使用有參構(gòu)造器實(shí)例化對(duì)象

使用反射機(jī)制調(diào)用方法

調(diào)用無參數(shù)方法:

調(diào)用有參方法:

訪問私有方法:



學(xué)習(xí)記錄之Java反射機(jī)制的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
大港区| 海阳市| 界首市| 广河县| 瑞金市| 上杭县| 庆安县| 建宁县| 巴林右旗| 习水县| 江北区| 平邑县| 壶关县| 孟村| 江油市| 南丰县| 襄垣县| 博白县| 无锡市| 鄯善县| 南阳市| 冀州市| 壤塘县| 丹东市| 铜陵市| 青铜峡市| 阳原县| 江永县| 苏尼特左旗| 古浪县| 丹江口市| 崇礼县| 太原市| 威远县| 永和县| 蕲春县| 大埔区| 淮安市| 大新县| 玛纳斯县| 枞阳县|