程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> java實現非法訪問異常示例

java實現非法訪問異常示例

編輯:JAVA編程入門知識

思路分析:

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

代碼如下:

import java.lang.reflect.Field;

public class ExceptionTest {
    public static void main(String[] args) {
        Class<?> clazz = String.class;                        //獲得代表String類的類對象
        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);
                }
            }
        }
    }
}


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved