<th id="wu2k2"><s id="wu2k2"></s></th> <blockquote id="wu2k2"></blockquote>
  • <tr id="wu2k2"></tr>
  • <samp id="wu2k2"><tbody id="wu2k2"></tbody></samp><samp id="wu2k2"><tbody id="wu2k2"></tbody></samp>
  • 更多精彩內容,歡迎關注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    java reflect

    文檔

    java reflect

    javareflect是反射機制,在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法和屬性;這種動態獲取的信息以及動態調用對象的方法的功能稱為java語言的反射機制。
    推薦度:
    導讀javareflect是反射機制,在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法和屬性;這種動態獲取的信息以及動態調用對象的方法的功能稱為java語言的反射機制。

    java reflect是什么?讓我們一起來了解一下吧!

    java reflect是反射機制,指在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法和屬性;這種動態獲取的信息以及動態調用對象的方法的功能稱為java語言的反射機制。

    ?

    實現反射的方法:

    一、獲得類的信息(獲得到的是類的全路徑信息)

    獲取類的信息有三種方法:

    1.使用class類的forName()方法獲取類的信息

    2.使用實例的getClass()獲取類的信息

    3.通過類名獲得類的信息

    二、使用類的信息創建類

    獲得類的信息之后,可以使用reflect(反射)包下面的Field和Method類獲得類的屬性和方法,并對屬性和方法進行操作。

    獲得類的全路徑名以后可以通過使用Class類中的getDeclaredMethod(String name, Class

    getDeclaredField(String name)方法如下:

    public?class?ClassUtils?{
    ????/**
    ?????*?獲取屬性字段
    ?????*?@param?clazz?類
    ?????*?@param?fieldName?屬性名稱
    ?????*?@throws?Exception
    ?????*/
    ????public?static?void?getDeclaredField(Class?clazz,?String?fieldName)?throws?Exception{
    ????????System.out.println(clazz.getDeclaredField(fieldName));
    ????}
    }
    public?class?ClassTest?{
    ????public?static?void?main(String[]?args)?{
    ????????try?{
    ????????????Class?clazz?=?Class.forName("reflectdemo.SuperHero");
    ????????????//測試公有屬性
    ????????????ClassUtils.getDeclaredField(clazz,?"ADDRESS");
    ????????????//測試私有屬性
    ????????????ClassUtils.getDeclaredField(clazz,?"name");
    ????????}?catch?(Exception?e)?{
    ????????????e.printStackTrace();
    ????????}
    ????}
    }

    ?getDeclaredFields()方法如下:

    public?class?ClassUtils?{
    ????/**
    ?????*?遍歷clazz對象已有的成員變量
    ?????*?@param?clazz
    ?????*/
    ????public?static?void?getDeclaredFields(Class?clazz){
    ????????Field[]?fields?=?clazz.getDeclaredFields();
    ????????for?(Field?field:?fields)?{
    ????????????//如果要設置值,需要加入下面這句,反射對象在使用時不使用Java語言訪問檢查
    ????????????//field.setAccessible(true);
    ????????????
    ????????????//直接打印Field
    ????????????System.out.println(field);
    ????????????//手動獲取變量類型和變量名稱
    ????????????System.out.println(field.getType().getName()?+?"?"?+field.getName());
    ????????????System.out.println("--------------------");
    ????????}
    ????}
    }
    public?class?ClassTest?{
    ????public?static?void?main(String[]?args)?{
    ????????try?{
    ????????????Class?clazz?=?Class.forName("reflectdemo.SuperHero");
    ????????????//遍歷成員變量
    ????????????ClassUtils.getDeclaredFields(clazz);
    ????????}?catch?(Exception?e)?{
    ????????????e.printStackTrace();
    ????????}
    ????}
    }

    以上就是小編今天的分享了,希望可以幫助到大家。

    文檔

    java reflect

    javareflect是反射機制,在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意一個方法和屬性;這種動態獲取的信息以及動態調用對象的方法的功能稱為java語言的反射機制。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關推薦
    java regex java openssl java orm java outer java outofmemory java overload java resources java resolve java require java region java render java override java pandas java parse java repeat java parser java request java partial java requests java rest java reference java redirect java rectangle java openjdk java opengl java openfire java onvif java inputstreamreader java influxdb java implements java image java htmlunit java hibernate java number java nslookup java notify java node類 java hdfs java hashcode java getbytes
    Top 91久久精品国产91性色也| 男女男精品视频网站在线观看| 久久精品国产第一区二区| 久久久久国产精品免费看| 老湿机一区午夜精品免费福利| 国产精品色拉拉免费看| 久久伊人精品热在75| 久久精品成人影院| 国产精品冒白浆免费视频| 在线视频精品免费| 久久久久亚洲精品天堂| 国内精品九九久久精品 | 精品国偷自产在线视频99| 精品人妻少妇一区二区三区| 韩国精品一区二区三区无码视频| 精品久久久久香蕉网| 99久久人妻精品免费一区| 国内精品久久久久久久97牛牛| 人妻少妇精品视频专区| 91精品国产免费久久国语麻豆| 亚洲第一永久AV网站久久精品男人的天堂AV | 精品午夜福利在线观看| 国产精品9999久久久久| 久久se精品一区二区影院| 日韩福利视频精品专区| 国产三级精品三级在线专区| 99精品国产在热久久无码| 精品一区二区三区在线视频| 国产精品无码MV在线观看| 精品亚洲国产成人av| 国产精品入口麻豆免费观看| 亚洲精品国产肉丝袜久久| 日韩精品无码一区二区中文字幕 | 国产成人精品AA毛片| 久久99精品国产99久久| 精品一区二区三区四区| 国产精品ⅴ无码大片在线看| 国产精品va无码一区二区| 久久99热精品免费观看动漫| 五月天婷亚洲天综合网精品偷| 精品一区二区三区在线观看l|