我有一个抽象类,它有一个泛型方法,我想通过用特定类型替换泛型参数来覆盖泛型方法.所以在伪代码中我有以下内容:
public abstract class GetAndParse {
public SomeClass var;
public abstract <T extends AnotherClass> void getAndParse(T... args);
}
public class Implementor extends GetAndParse {
// some field declarations
// some method declarations
@Override
public <SpecificClass> void getAndParse(SpecificClass... args) {
// method body making use of args
}
}
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,我不允许这样做?我是在做某种语法错误还是这种继承和覆盖是不允许的?具体来说,我收到一个错误,@Override因为eclipse IDE一直在提醒我实现getAndParse.
以下是我希望上述代码的工作方式.我的代码中的其他地方有一个方法,它需要实现的对象实例,GetAndParse这意味着它们有一个getAndParse我可以使用的方法.当我调用getAndParse该实例时,编译器会检查我是否T以正确的方式使用了特定的实例,因此特别T应该扩展AnotherClass它应该是SpecificClass.