如何在Java中使用args新建类?

如何在Java中使用args新建类?,java,constructor,Java,Constructor,编译时上面的代码有错误,有人能告诉我如何在Java中使用带有arg的构造函数吗?正确的版本如下 public class Test{ public void Test(String name){}; public static void main() { Test t=new Test("right"); } } 改变 到 publicstaticvoidmain()应该是publicstaticvoidmain(String[]somethin

编译时上面的代码有错误,有人能告诉我如何在Java中使用带有arg的构造函数吗?

正确的版本如下

public class Test{
    public void Test(String name){};
    public static void main()
    {
        Test t=new Test("right");
    }
}
改变


publicstaticvoidmain()
应该是
publicstaticvoidmain(String[]somethingulike)

默认情况下,您应该遵循

没有带参数的构造函数:

public Test(String name){};

您的错误在于如何定义构造函数。构造函数没有返回类型

public void Test(String name){}; //method with Test name
public Test(String name){}; //constructor

除此之外,你明白了

构造函数也是
方法
,它没有
返回
类型(void或其他返回类型)。由于您定义了类似于构造函数但带有返回类型的构造函数,编译器认为它是一个方法,因此不会对此抱怨,但当您尝试使用参数构造函数实例化类时,它失败了,因为它无法找到该类型的构造函数。如果没有定义显式构造函数,java编译器将自动使用默认构造函数,即无参数构造函数。另外,main方法应该将
字符串[]args
作为参数

public void Test(String name){};
public Test(String name){};
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()
    {
        Test t=new Test("right");
    }
}