Java generics issue: Class “not within bounds of type-variable” error.

后端 未结 1 479
误落风尘
误落风尘 2020-11-29 12:31

I\'m working on a project for class that involves generics.

public interface Keyable  {public String getKey();}

public interface DataElement extend         


        
相关标签:
1条回答
  • 2020-11-29 13:00

    In MySearchTree the K of the base type is Course. So K must "extend" Comparable<Keyable<Course>> & Keyable<Course>. But it doesn't, it extends Comparable<Keyable<DataElement>> & Keyable<DataElement>.

    I guess DataElement should be generified in a similar manner to Comparable or Enum.

    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> {
    
    0 讨论(0)
提交回复
热议问题