2012-10-18 59 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; 
    } 
} 
相关问题