欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java實(shí)現(xiàn)非法訪問(wèn)異常示例

 更新時(shí)間:2014年02月27日 15:47:55   作者:  
創(chuàng)建ExceptionTest類,在該類的main()方法中,使用反射獲得String類的所有域,不要使用setAccessible方法修改這些域的可見(jiàn)性,然后通過(guò)反射獲得私有域中與”hash”相匹配的int值,并使用try-catch語(yǔ)句塊捕獲非法訪問(wèn)異常

思路分析:

首先使用Class獲得一個(gè)代表String類的類對(duì)象,然后使用Class類的getDeclaredFields()方法獲得所有成員變量,并賦值給一個(gè)Field型數(shù)組,即得到String類的所有域。
使用foreach()循環(huán)遍歷所有域,使用Field類的getName()方法獲得該成員變量的名稱,如果域的名字是hash,嘗試使用Field類的getInt(Object obj)方法獲得指定對(duì)象中類型為int的該成員變量的值。
依次捕獲IllegalArgumentException異常和IllegalAccessException異常。
代碼如下:

復(fù)制代碼 代碼如下:

import java.lang.reflect.Field;

public class ExceptionTest {
    public static void main(String[] args) {
        Class<?> clazz = String.class;                        //獲得代表String類的類對(duì)象
        Field[] fields = clazz.getDeclaredFields();
        for (Field field : fields) {                            //遍歷所有域        
            System.out.println(field);
            if (field.getName().equals("hash")) {               //如果域的名字是hash
                try {
                    System.out.println(field.getInt("hash"));   // 輸出hash的值
                } catch (IllegalArgumentException e) {      //捕獲IllegalArgumentException異常
                    System.out.println(e);
                } catch (IllegalAccessException e) {            //捕獲IllegalAccessException異常
                    System.out.println(e);
                }
            }
        }
    }
}


相關(guān)文章

  • SpringBoot打包發(fā)布到linux上(centos 7)的步驟

    SpringBoot打包發(fā)布到linux上(centos 7)的步驟

    這篇文章主要介紹了SpringBoot打包發(fā)布到linux上(centos 7)的步驟,幫助大家更好的理解和使用springboot框架,感興趣的朋友可以了解下
    2020-12-12
  • Arrays.sort(arr)是什么排序及代碼邏輯

    Arrays.sort(arr)是什么排序及代碼邏輯

    在學(xué)習(xí)過(guò)程中觀察到Arrays.sort(arr)算法可以直接進(jìn)行排序,但不清楚底層的代碼邏輯是什么樣子,今天通過(guò)本文給大家介紹下Arrays.sort(arr)是什么排序,感興趣的朋友一起看看吧
    2022-02-02
  • Spring Bean常用的的裝配方式詳解

    Spring Bean常用的的裝配方式詳解

    這篇文章主要介紹了Spring Bean常用的的裝配方式詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • spring boot微服務(wù)自定義starter原理詳解

    spring boot微服務(wù)自定義starter原理詳解

    這篇文章主要介紹了spring boot微服務(wù)自定義starter原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

    Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

    這篇文章主要介紹了Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法,通過(guò)兩個(gè)簡(jiǎn)單實(shí)例分析了java通過(guò)socket實(shí)現(xiàn)UDP發(fā)送與接收的技巧,需要的朋友可以參考下
    2015-05-05
  • java中線程池的關(guān)閉問(wèn)題

    java中線程池的關(guān)閉問(wèn)題

    這篇文章主要介紹了java中線程池的關(guān)閉問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 關(guān)于@Transactional事務(wù)表被鎖的問(wèn)題及解決

    關(guān)于@Transactional事務(wù)表被鎖的問(wèn)題及解決

    這篇文章主要介紹了關(guān)于@Transactional事務(wù)表被鎖的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • SpringBoot整合Log4j2實(shí)現(xiàn)自定義日志打印失效的原因及解決

    SpringBoot整合Log4j2實(shí)現(xiàn)自定義日志打印失效的原因及解決

    本文給大家介紹了關(guān)于SpringBoot項(xiàng)目整合Log4j2實(shí)現(xiàn)自定義日志打印失效原因及解決辦法,主要的原因是因?yàn)镾pringBoot的logback包的存在,文中通過(guò)圖文給大家了詳細(xì)解決方法,需要的朋友可以參考下
    2024-01-01
  • javaweb文件打包批量下載代碼

    javaweb文件打包批量下載代碼

    這篇文章主要為大家詳細(xì)介紹了javaweb文件打包批量下載代碼,批量下載未批改作業(yè),感興趣的小伙伴們可以參考一下
    2016-06-06
  • 一次mybatis連接查詢遇到的坑實(shí)戰(zhàn)記錄

    一次mybatis連接查詢遇到的坑實(shí)戰(zhàn)記錄

    這篇文章主要給大家介紹了關(guān)于一次mybatis連接查詢遇到的坑的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評(píng)論