黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java基礎學習:java反射機制及原理

Java基礎學習:java反射機制及原理

更新時間:2020-04-17 14:12:46 來源:動力節(jié)點 瀏覽2755次

    一反射機制的概念:

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

    二反射機制的應用:

    生成動態(tài)代理,面向切片編程(在調(diào)用方法的前后各加棧幀).

    三反射機制的原理:

    1首先明確的概念:一切皆對象----類也是對象.

    2然后知道類中的內(nèi)容:modifierconstructorfieldmethod.

    3其次明白加載:當Animal.class在硬盤中時,是一個文件,當載入到內(nèi)存中,可以認為是一個對象,是java.lang.class的對象.

    當運行程序時,實例化時產(chǎn)生Animal.class對象,這兩個對象有什么區(qū)別?

    如下圖,上面的Animal.class對象是java.lang.class的對象;下面的對象是Animal.class實例化產(chǎn)生的對象

Java基礎學習:java反射機制及原理

    4當Animal.class載入到JVM中,JVM是怎么識別Animal.class中含有的方法,成員變量,構(gòu)造方法等內(nèi)容?

    如下圖,Animal.class實例化對象中成員變量毛色=紅色;

    加載到內(nèi)存的時候,毛色=null,是在實例化的時候毛色被賦值為紅色.

  Java基礎學習:java反射機制及原理

    Animal.class中毛色這個屬性對于java.lang.class來說,是Field的一個屬性值,毛色對于java.lang.class來說也是一個對象.這也是反射機制動態(tài)獲取信息,以及動態(tài)調(diào)用對象方法的原因.

    下圖是Java.lang.class中的方法

1587103903544087.pngJava基礎學習:java反射機制及原理

 

Java基礎學習:java反射機制及原理

    在java.lang.class中,毛色是Field的一個屬性值,Animal中所有的方法,成員變量,構(gòu)造器,修飾符都是按照java.lang.class中的標準去寫的,否則會在編譯的時候報錯

    Java基礎學習:java反射機制及原理

    四反射機制簡單實例代碼

    publicclass_14_ReflectTest07

    {

    publicstaticvoidmain(String[]args)throwsException{

    //1.獲取類

    Classc=Class.forName("_12_CustomerService");

    //獲取某個特定的方法

    //通過:方法名+形參列表

    Methodm=c.getDeclaredMethod("login",String.class,String.class);

    //通過反射機制執(zhí)行l(wèi)ogin方法.

    Objecto=c.newInstance();

    //調(diào)用o對象的m方法,傳遞"admin""123"參數(shù),方法的執(zhí)行結(jié)果是retValue

    ObjectretValue=m.invoke(o,"admin","123");

    System.out.println(retValue);//true

    }

    }

    publicclass_12_CustomerService

    {

    //登錄

    publicbooleanlogin(Stringname,Stringpwd){

    if("admin".equals(name)&&"123".equals(pwd)){

    returntrue;

    }

    returnfalse;

    }

    //退出

    publicvoidlogout(){

    System.out.println("系統(tǒng)已安全退出!");

    }

    }

 以上就是動力節(jié)點java培訓機構(gòu)的小編針對“Java基礎學習:java反射機制及原理”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 日本高清一区二区三区不卡免费 | 色综合中文网 | 日本a视频在线 | 午夜看片免费 | 日本精品在线观看 | 亚色污| 99爱在线精品视频网站 | 日韩国产欧美成人一区二区影院 | 在线观看视频免费 | 男女扒开双腿猛进入免费看污 | 亚洲国产成人精品一区91 | 操操综合 | 成 人在线观看视频网站 | 久久国| 日本免费一区二区三区中文 | 免费久久精品 | 天天看天天干天天操 | 免费伦理片网站 | 欧美综合自拍亚洲综合 | 欧美蜜桃 | 国产高清不卡视频在线播放 | 国产成人精品综合网站 | 亚洲欧美日韩中文字幕在线 | 免费在线毛片 | 毛片看看 | free性video另类 | 免费黄网站在线看 | 日本三级黄视频 | 成人禁18视频在线观看 | a级黄视频 | 俄罗斯高清freexxxx性 | 欧美亚洲风情 | 欧美中日韩在线 | 欧美激情视频一区二区三区 | 不卡一区二区三区卡 | 一级片视频在线 | 一级免费视频 | 男女扒开双腿猛进入免费看污 | 五月婷中文字幕 | 91亚洲国产在人线播放午夜 | 精品午夜寂寞影院在线观看 |