【发布时间】:2017-05-18 02:25:08
【问题描述】:
我有一个名为 Trip 的自定义类,它有几个 getter 方法,所有内容都是公开的。 我将几个 Trip 对象添加到 ArrayList:
public ArrayList<Trip> routeIndex;
当使用以下代码回调其中一个 Trip 对象时,我会遇到访问错误。
Trip abc = routeIndex.get(0);
for (Field field : abc.getClass().getDeclaredFields()) {
field.setAccessible(true);
String name = field.getName();
field.setAccessible(true);
Object value = field.get(abc);
System.out.printf("Field name: %s, Field value: %s%n", name, value);
}
这是对象值行上的以下错误:
unreported exception java.lang.IllegalAccessException; must be caught or declared when thrown
有什么我可能会出错的想法吗?
【问题讨论】:
-
这称为检查异常。您必须在这些调用周围包裹一个
try/catch块。 -
另外,您可以在函数上声明
throws,以允许应用程序在不改变其行为的情况下进行编译。 -
“我遇到编译器错误”如何转换为标题的“Java Arraylist 在 get() 上丢失方法/字段”?
标签: java arraylist methods illegalaccessexception