我在java中有以下层次结构:
interface ObserverA {}
interface A {
void method1();
addObserver(Observer o);
}
我想像这样扩展它:
interface ObserverB extends ObserverA{}
interface B extends A {
void method2();
addObserver(ObserverB o);
}
这样, 的addObserver()
方法B
将覆盖 . 中的相同方法A
。因为它不起作用,所以B
需要实现 的两个版本addObserver()
,我不想只有一个。
这可以以一种不需要参数化的巧妙方式完成,A
例如:
interface A<O extends Observer> {
addObserver(O o);
}
最欢迎黑客解决方案!