信息发布→ 登录 注册 退出

java实现非法访问异常示例

发布时间:2026-01-11

点击量:

思路分析:

首先使用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);
                }
            }
        }
    }
}


在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!