Java泛型问题:类“不在类型变量的范围内”错误。
在MySearchTree的K基本类型为Course。因此K必须“扩展” Comparable<Keyable<Course>> &Keyable<Course>。但是,它没有扩展Comparable<Keyable<DataElement>> &Keyable<DataElement>。
我猜 应该以类似的方式对泛型 或 。
public interface Keyable <T> {public String getKey();}public interface DataElement<THIS extends DataElement<THIS>> extends Comparable<Keyable<THIS>>, Keyable<THIS>, Serializable {...}public class Course implements DataElement<Course> {...}public interface SearchTree<K extends Comparable<Keyable<K>> & Keyable<K>> extends Serializable {...}public class MySearchTree implements SearchTree<Course> {解决方法
我正在为一个涉及泛型的类项目。
public interface Keyable <T> {public String getKey();}public interface DataElement extends Comparable<Keyable<DataElement>>,Keyable<DataElement>,Serializable {...}public class Course implements DataElement {...}public interface SearchTree<K extends Comparable<Keyable<K>> & Keyable<K>> extends Serializable {...}public class MySearchTree implements SearchTree<Course> {... private class Node {public Course data;public Node left;public Node right;... }}
当尝试在MySearchTree的声明中使用Course类时,我收到一个类型自变量错误,指出“课程不在类型变量K的范围内”。我花了很多时间试图弄清楚Course可能缺少哪些属性,以使其不符合要求,但却空洞了。
有任何想法吗?
相关文章:
1. html5 - 用h5本地存储是否安全?2. css3 - 新版支付宝 账单页面滑动时月份栏被下一个月给顶上去是什么效果3. javascript - 有什么兼容性比较好的办法来判断浏览器窗口的类型?4. python - 怎么通过vpn连内网ftp?5. javascript - 为什么我的vue里的router-link不起作用6. javascript - vue中input的blur影响了下拉的点击事件如何解决7. javascript - js输入框限定字数问题8. 使用weex扩展html5的项目存在ios不同版本的兼容性9. 前端 - css自定义字体10. python如何转换时间戳到"2017年6月12日 18点24分"这样的格式呢?

网公网安备