从主方法从另一个类构造函数调用时出现“.class expected”错误

时间:2013-03-11 17:48:45

标签: java main-method

我正在创建一个基本程序来创建一个具有某些属性的对象,并且它工作正常,但是我需要将它作为一个独立的程序本身加载,所以我创建了另一个名为Lanzador的类,它从另一个类调用构造函数它可以创建对象。

我是新手,所以我真的不知道我在做什么:

public class Lanzador
{
    public static void main(String args[]) {
        TipodeTirada tirada = new TipodeTirada(String,String,int,String,boolean,int,boolean);

    }
}

问题是我不知道如何真正做到这一点,因为它仍然给我一个“int.class”预期。

我应该怎么做才能在启动程序时让我输入属性(stirng,int等)?

非常感谢。

3 个答案:

答案 0 :(得分:1)

您需要为构造函数提供实际值,而不是键入关键字。传入关键字只会使编译器抱怨为期望的文字值。相反,你可以使用,(例如):

new TipodeTirada("some value", "value2", 100, "value 3" ,false, 200, true);

答案 1 :(得分:1)

TipodeTirada tirada = new TipodeTirada("a","b",1,"c",false,2,true);

您需要将实际值发送到构造函数

  

注意:“a”,“b”和所有都是虚拟值放置有意义的值   你的情景。

答案 2 :(得分:0)

这:

TipodeTirada tirada = new TipodeTirada(String,String,int,String,boolean,int,boolean);

Java中不存在。即使在声明方法时,您也必须为参数命名:

public void myFunction(String param1, int param2)
{
     ...
}

它确实存在于C language中,但这是另一个问题。

在这里,您要创建TipodeTirada的实例,因此在调用方法时必须传递实际值,例如:

TipodeTirada tirada = new TipodeTirada("String 1","String 2",1,"String 3",true,2,false);

假设您有一个类TipodeTirada,如下所示:

public class TipodeTirada {
    String name, surname, value;
    int age, weight;
    boolean bool1, bool2;
}

然后你会把你的构造函数放在这里:

public TipodeTirada(String name,String surname,int age,String value,boolean bool1,int weight,boolean bool2)
{
    this.name = name;
    this.surname = name;
    // etc...
}

所以你正在做的是创建一个你现在在main内调用的方法,它将你的参数值分配给你的TipodeTirada实例的字段。