2012-10-12 140 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++; 
    } 
}