【发布时间】:2017-07-17 11:25:15
【问题描述】:
我有以下类和接口:
public class Entity {}
public interface EntitySet<T extends Entity> {}
现在我想编写实现EntitySet 接口并重用类型T 的类。我尝试了以下操作:
public class Method1EntitySet<T> implements EntitySet<T extends Entity>{}
这给了我错误:
令牌“扩展”的语法错误,预期
所以我尝试了:
public class Method1EntitySet<T> implements EntitySet<T>{}
这给了我错误:
边界不匹配:类型 T 不是 EntitySet 类型的有界参数的有效替代品
这行得通:
public class Method1EntitySet<T> implements EntitySet{}
但它给了我警告:
EntitySet 是一个原始类型。对泛型 EntitySet 的引用应该被参数化。
我也猜想,上面的T 不会强制扩展Entity。
我应该如何完成这项工作?
【问题讨论】:
标签: java generics inheritance