假设我有一个通用的构建器类型:
问题在于FooHandler的handle()方法没有被识别为覆盖Handler的handle()方法:
public abstract class Builder<T> {
public abstract T build();
}
然后是一个 Foo 类和它的构建器,这个构建器继承自 Builder:
public class Foo {
// stuff
}
public class FooBuilder extends Builder<Foo> {
public Foo build() {
return new Foo();
}
}
我还有一个抽象的、通用的 Handler 类型:
public abstract class Handler<T> {
public abstract <U extends Builder<T>> void handle(U builder);
}
最后是一个FooHandler:
public class FooHandler extends Handler<Foo> {
@Override
public void handle(FooBuilder builder) {
// do something
}
}
问题在于FooHandler的handle()方法没有被识别为覆盖Handler的handle()方法:
Method does not override method from its superclass
。这个问题能否解决?
FooBuilder
的FooHandler
。 - Sotirios Delimanolis