Java泛型问题:类“不在类型变量的范围内”错误。
导读:如何解决Java泛型问题:类“不在类型变量的范围内”错误。?在MySearchTree的K基本类型为Course。因此K必须“扩展” Comparable<Keyable<Course>> &Keyable<Course>。但是,它没有扩展Comparab...
在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. vagrant - 使用NFS文件夹作为mysql datadir无法启动mysql的问题?2. css3 - selectivezr.js 结合mootools.js 不支持:first-child?3. 性能基准:PHP生成的内容VS。JavaScript和DOM over AJAX4. ios - 为什么用WKWebView加载相同的html文本,有时展示的内容却不一样。5. css和HTML样式 投票管理系统6. java-如何使列表彼此相邻(水平)而不是向下(垂直)。7. javascript - kindeditor上传本地图片8. java - Android studio 新项目运行结果都是Process finished with exit code 09. AngularJs。是否可以通过单击取消选择HTML“广播”输入?10. navicat - 数据库建索引选择的是hash,但保存后自动变成了btree|实践时mysql四种引擎都有什么要注意的?