2012-05-10 82 views
1

我已經定義了一個子類,並希望有兩個具有不同參數的構造函數。它看起來像這樣無法在子類中創建重載的構造函數

public class GraphNode extends Entity{ 
    protected String id; 

    public GraphNode(PVector pos, String id) { 
     super(pos,0); 
     this.id = id; 
    } 

    public GraphNode(PVector pos, String id, List<GraphEdge>) { 
     this(pos, id); 
     //do something else 
    } 
} 

編譯器不斷告訴我說:

型 GraphNode複製方法GraphNode(PVector,字符串)

我在做什麼錯?

+0

這看起來並不像完整的故事?併爲列表指定變量名稱邊緣 – maress

回答

1

你忘了給你的第三個參數變量名:

public GraphNode(PVector pos, String id, List<GraphEdge> list) 
+3

我應該休息一下,謝謝。 – Hedge

1

它應該是這樣的

public class GraphNode extends Entity{ 
    protected String id; 

    public GraphNode(PVector pos, String id) { 
     super(pos,0); 
     this.id = id; 
    } 

    public GraphNode(PVector pos, String id, List<GraphEdge> list) { 
     this(pos, id); 
     //do something else 
    } 
} 
+1

如果我很難發現你和op的方法之間的區別。看起來像那些比賽「找到7個差異」:) – Luciano

相關問題