泛型:从实现接口的抽象类继承
我有以下界面:
public interface SingleRecordInterface<T> { public void insert(T object);
}
我在下面有抽象类(没有提到方法插入):
public abstract class AbstractEntry implements SingleRecordInterface<AbstractEntryBean> {}
我有具体的课程:
public class SpecificEntry extends AbstractEntry { public void insert(SpecificEntryBean entry) {
// stuff
}
}
最后,SpecificEntryBean定义为:
public class SpecificEntryBean extends AbstractEntryBean {}
我有以下错误:
类型SpecificEntry必须实现继承的抽象方法SingleRecordInterface.insert(AbstractEntryBean)
考虑到SpecificEntryBean扩展了AbstractEntryBean,所以我不明白此错误的原因。如何解决此错误?
回答:
您还需要使抽象类通用:
public abstract class AbstractEntry<T extends AbstractEntryBean> implements SingleRecordInterface<T> {}
然后针对您的具体课程:
public class SpecificEntry extends AbstractEntry<SpecificEntryBean> {}
以上是 泛型:从实现接口的抽象类继承 的全部内容, 来源链接: utcz.com/qa/421506.html