2012-10-18 192 views
-1

我試圖用非默認承包函數創建LinearNode類,但傳遞了兩個參數。我試過這個,但是我得到一個錯誤。任何想法爲什麼?非默認構造函數的類

public class LinearNode<T> (T elem, LinearNode<T> node){ 
     private LinearNode<T> next = node; 
     private T element = elem; 
    } 

謝謝!

回答

2

你已經混有類定義構造函數。構造函數是一個特殊的成員函數,應該或多或少地像方法一樣定義(沒有返回類型和類名)。

public class LinearNode<T> { 
    private LinearNode<T> next; 
    private T element; 

    LinearNode(T elem, LinearNode<T> node) { 
     next = node; 
     element = elem; 
    } 
} 
+0

明白了..謝謝.. – JProg

+0

正確的答案,但可以使用一些解釋。這個網站並不是要讓人們爲你寫代碼的地方。 – gnomed

+0

好吧,我認爲這個例子太小了,它解釋了它自己。但你是對的。 –

1

你不能有(arguments)與類聲明

而且還

不能指定訪問說明符private局部變量

0

您的構造函數聲明需要與您的類聲明分開。像這樣:

public class LinearNode<T>{ 
    private LinearNode<T> next; 
    private T element; 
    LinearNode<T>(T elem, LinearNode<T> node){ 
     next = node; 
     element = elem; 
    } 
} 
相關問題