我有以下问题:我有一个类,试图使用反射来调用其 OWN 受保护的方法之一,但出现异常:java.lang.IllegalAccessException: access to method denied
有人可以对此有所了解吗?
基类:
public abstract class BaseReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// invoke the correct event method:
Method method;
try {
method = this.getClass().getDeclaredMethod("testMethod");
method.invoke(this);
} catch (Throwable ex) {
// ... display exception message
}
}
protected void testMethod() {
}
}
派生的具体类:
class MyReceiver extends BaseReceiver {
@Override
protected void testMethod() {
// display error message
}
}