public class Test{
public void Test(String name){};
public static void main()
{
Test t=new Test("right");
}
}
上面的代码在编译时有错误,谁能告诉我如何在Java中使用带有arg的构造函数?
public class Test{
public void Test(String name){};
public static void main()
{
Test t=new Test("right");
}
}
上面的代码在编译时有错误,谁能告诉我如何在Java中使用带有arg的构造函数?
没有带参数的构造函数:
public void Test(String name){}; //method with Test name
public Test(String name){}; //constructor
正确的版本如下
public class Test{
public Test(String name){};
public static void main(String args [])
{
Test t=new Test("right");
}
}
public static void main()
应该是public static void main(String[] somethingulike)
你应该遵循的默认值
您的错误在于您如何定义构造函数。构造函数没有返回类型。
public class Test{
public Test(String name){};
public static void main()
{
Test t=new Test("right");
}
}
除此之外,你得到它!
public class Test{
private String name;
public Test(String name){ this.name = name; };
public static void main(String [] args)
{
for (String arg : args) {
Test t=new Test(arg);
}
}
}
构造函数也methods
没有return
类型(void 或其他返回类型)。由于您定义类似于构造函数但具有返回类型,编译器认为它是一种方法并且它不会为此抱怨,但是当您尝试使用参数构造函数实例化类时它失败了,因为它无法找到构造函数那种类型的。如果没有定义显式构造函数,java 编译器将自动使用默认构造函数,即无参数构造函数。此外,您的主要方法应该具有String[] args
as 参数。