2012-10-12 97 views
-2

我无法创建此类包含可比较的泛型雇用层。我在这里错过了什么?这会引发错误。覆盖仿制药

public class Generics <T extends Comparable<T>> 
    extends Parent<T extends Comparable<T>> { 

    ArrayList<T> ar; 

    public Generics() { 
     ar = new ArrayList<>(); 
    } 

    @Override 
    public void add(T elt){ 
     ar.add(elt); 
    } 
} 

和父类是:

public class Parent <T extends Comparable<T>>{ 
    int size =0; 
    public Parent(){ 
     size=0; 
    } 

    public void add(T elt){ 
     size++; 
    } 
} 

尝试 “提取超” 放在下面。我试着提取ArrayList和add(T elt)。这是在以下配置中:

产品版本:NetBeans IDE 7.2(Build 201207171143) Java:1.7.0_07; Java HotSpot(TM)64位服务器虚拟机23.3-b01 系统:Linux版本3.2.0-30-通用amd64上运行; UTF-8; EN_US(NB)

public class Generics <T extends Comparable<T>> { 

    ArrayList<T> ar; 
    int size; 

    public Generics() { 
     ar = new ArrayList<>(); 
     size = 0; 
    } 

    public void add(T elt){ 
     ar.add(elt); 
     size++; 
    } 
} 

回答

5

尝试这个

public class Generics <T extends Comparable<T>> 
    extends Parent<T> { 

    ArrayList<T> ar; 

    public Generics() { 
     ar = new ArrayList<>(); 
    } 

    public void add(T elt){ 
     ar.add(elt); 
    } 
} 
+0

感谢那些工作! – fodon

+0

当我尝试获取泛型类的父项时,有趣的NetBeans会引发堆栈溢出错误。 – fodon

+0

@fodon抛出这个异常的代码在哪里? – 2012-10-12 19:09:29

1
public class Generics <T extends Comparable<T>> extends Parent<T> { 

ArrayList<T> ar; 

public Generics() { 
    ar = new ArrayList<T>(); 
} 

    public void add(T elt){ 
     ar.add(elt); 
    } 
} 



public class Parent <T extends Comparable<T>>{ 
int size =0; 
    public Parent(){ 
     size=0; 
    } 

    public void add(T elt){ 
     size++; 
    } 
}