这与这里提出的问题几乎相同。
但我的问题延伸到了这一点。
我可以将其更改为“A 扩展 B”,但随后我必须使我的方法成为非静态的,这只会让我的整个系统崩溃。
有什么办法可以解决这个问题吗?
好吧,假设我有一个带有方法 AA 和方法 BB 的 A 类
public class A {
public static final BB (){
}
public static final AA (){
}
}
}
现在已经设置好了,我有另一个实现它的类,但它也有自己的方法 AA 和 BB 版本。
public class AImpl implements A {
public BB (){
}
public AA (){
}
}
}
现在,如果我尝试扩展类,我将收到错误“实例方法无法覆盖来自 A 的静态方法”。
那么它说我可以通过从 A 类中删除静态来解决这个问题。
我这样做然后它告诉我几乎所有其他可能的 50 个类都无法从类 A 的方法 BB 中引用非静态方法。