デフォルト以外のコントラクターを使用して LinearNode クラスを作成しようとしていますが、2 つの引数を渡しています。これを試しましたが、エラーが発生します。理由はありますか?
public class LinearNode<T> (T elem, LinearNode<T> node){
private LinearNode<T> next = node;
private T element = elem;
}
ありがとう!
デフォルト以外のコントラクターを使用して LinearNode クラスを作成しようとしていますが、2 つの引数を渡しています。これを試しましたが、エラーが発生します。理由はありますか?
public class LinearNode<T> (T elem, LinearNode<T> node){
private LinearNode<T> next = node;
private T element = elem;
}
ありがとう!
コンストラクターとクラス定義を混在させました。コンストラクターは特別なメンバー関数であり、多かれ少なかれメソッドのように定義する必要があります (戻り値の型はなく、クラスと同じ名前です)。
public class LinearNode<T> {
private LinearNode<T> next;
private T element;
LinearNode(T elem, LinearNode<T> node) {
next = node;
element = elem;
}
}
(arguments)
クラス宣言を使用することはできません
また、
private
ローカル変数にアクセス指定子を指定することはできません
コンストラクターの宣言は、クラスの宣言とは別にする必要があります。そのようです:
public class LinearNode<T>{
private LinearNode<T> next;
private T element;
LinearNode<T>(T elem, LinearNode<T> node){
next = node;
element = elem;
}
}