java實(shí)現(xiàn)非法訪問(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異常。
代碼如下:
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);
}
}
}
}
}

- JavaMail訪問(wèn)Hotmail郵箱
- 封裝了一個(gè)Java數(shù)據(jù)庫(kù)訪問(wèn)管理類
- 基于JQuery的訪問(wèn)WebService的代碼(可訪問(wèn)Java[Xfire])
- Java中的訪問(wèn)修飾符詳細(xì)解析
- 淺談java中的訪問(wèn)修飾符
- Java訪問(wèn)WebService返回XML數(shù)據(jù)的方法
- Java中成員方法與成員變量訪問(wèn)權(quán)限詳解
- 舉例詳解Java中的訪問(wèn)權(quán)限修飾符
- Java隨手筆記8之包、環(huán)境變量和訪問(wèn)控制及maven profile實(shí)現(xiàn)多環(huán)境打包
- 理解Java訪問(wèn)權(quán)限控制
相關(guān)文章
SpringBoot打包發(fā)布到linux上(centos 7)的步驟
這篇文章主要介紹了SpringBoot打包發(fā)布到linux上(centos 7)的步驟,幫助大家更好的理解和使用springboot框架,感興趣的朋友可以了解下2020-12-12spring boot微服務(wù)自定義starter原理詳解
這篇文章主要介紹了spring boot微服務(wù)自定義starter原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12Java基于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關(guān)于@Transactional事務(wù)表被鎖的問(wèn)題及解決
這篇文章主要介紹了關(guān)于@Transactional事務(wù)表被鎖的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01SpringBoot整合Log4j2實(shí)現(xiàn)自定義日志打印失效的原因及解決
本文給大家介紹了關(guān)于SpringBoot項(xiàng)目整合Log4j2實(shí)現(xiàn)自定義日志打印失效原因及解決辦法,主要的原因是因?yàn)镾pringBoot的logback包的存在,文中通過(guò)圖文給大家了詳細(xì)解決方法,需要的朋友可以參考下2024-01-01一次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