存在以下问题:我有一个内部私有类,它有公共方法,我需要重写它。是否可以使用 Java 反射?
更新:
public class MyPublicClass {
private class MyPrivateClass {
public void doPublicMethod() {}
}
}
存在以下问题:我有一个内部私有类,它有公共方法,我需要重写它。是否可以使用 Java 反射?
更新:
public class MyPublicClass {
private class MyPrivateClass {
public void doPublicMethod() {}
}
}
我能想到的唯一方法是使用这样的单独的私有类:
public class MyPublicClass {
private class MyPrivateClass {
public void doPublicMethod() {}
}
private class Test extends MyPrivateClass {
@Override
public void doPublicMethod() {
// Do your stuff
}
}
}
但这不是使用反射。
单独使用反射是不可能的。但是您可以通过使用AspectJ或其他面向 Aspect 的 Java 编程库来管理。它允许您使用某些规则修改字节码。