我使用此方法Html
从类中的 s 中删除代码String
:
public void filterStrings() {
Field[] fields = this.getClass().getDeclaredFields();
if (fields == null) {
return;
}
for (Field f : fields) {
if (f.getType() == java.lang.String.class) {
try {
String value = (String) f.get(this);
f.set(this, methodToRemoveHtml(value));
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
}
工作正常。由于我发现自己将这个方法放在我使用的许多类中,我想我会让所有这些类继承自 BaseClass 并只在那里实现该方法。
但是当我这样做时,我每次尝试都会得到: java.lang.IllegalAccessException: access to field not allowed
- 为什么会发生这种情况和
- 我怎样才能解决这个问题?