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