如果接口定义不使用泛型,是否可以生成接口的实现?我无法控制需要实现的接口,但想要为我的实现禁止“未检查”警告。可能为Java中的非通用接口的实现添加泛型?
2
A
回答
4
有些问题可以解决,有些问题不能解决。
如果实例的接口看起来是这样的:
interface OldInterface {
List someMethod();
}
话,当然,你可以通过
class NewClass implements OldInterface {
public List<String> someMethod() { // DOES COMPILE.
...
}
}
如果,另一方面,界面看起来像
实现它interface OldInterface {
void someMethod(ArrayList list);
}
然后没有什么可以做的关于它编程明智。
class NewClass implements OldInterface {
public void someMethod(ArrayList<String> list) { // DOES NOT COMPILE.
...
}
}
这就是所谓的unavoidable generic type problem。幸运的是,这些警告被抑制,至少在Eclipse中,通过检查忽略不可避免的通用类型问题下
窗口>首选项>的Java>编译器>错误/警告
0
限制的返回值始终是可能的当重写时,它被称为协变式返回类型。添加一个泛型元素就是这样。
否则,如前所述,限制参数是不允许的。重写时,可以使用更宽的类型作为参数,它被称为contra-variance。
相关问题
- 1. 整蛊Java泛型:泛型类实现非通用接口与通用方法
- 2. 接口中的泛型类型和实现中的非泛型
- 3. 可能将NullObject实现注册为泛型接口的后备?
- 4. 非泛型接口作为泛型接口的同义词
- 5. 实现接口的非泛型方法中的泛型模式匹配
- 6. 实现通用接口语法的泛型类型?
- 7. 是否有可能为特定的而非泛型实现AbstractList?
- 8. 接口中的Java泛型
- 9. 使用泛型实现接口
- 10. 使用泛型实现多接口
- 11. 在继承自非通用接口的泛型类型中实现通用方法的问题
- 12. Groovy无法实现使用继承和泛型的Java接口
- 13. 与非泛型实现泛型类型
- 14. MEF 2无法导入泛型接口的通用实现
- 15. 在泛型类中实现通用接口
- 16. Java的泛型和接口
- 17. Java泛型,实现一个类型为Iterable的接口<E>
- 18. 使用不同的泛型类型实现同一个泛型Java接口的多个实例?
- 19. Java抽象类使用泛型实现接口
- 20. 实现嵌套泛型接口
- 21. 实现泛型和接口组成
- 22. C#实现接口与泛型重写
- 23. 与集合实现接口和泛型
- 24. 一个功能实现通用和非通用接口
- 25. Enum使用Java中的泛型返回接口的实例?
- 26. 使用泛型并在接口中实现可选字段或可选地实现接口?
- 27. 在Java中实现通用接口
- 28. 在Clojure中实现Java通用接口
- 29. 如何在java接口中使用泛型的泛型
- 30. 查询实现一个通用接口的类的泛型类型定义