java中的简单类问题

时间:2015-02-02 21:01:27

标签: java class

有人可以告诉我这里有什么不对吗????

package javaapplication2;

public class JavaApplication2{

        int number;

    public int JavaApplication2(int number){
        this.number = number;
        return number;
    }

    public static void main (String[] args){       
    JavaApplication2 object = new JavaApplication2(2); // This line generates error
    }

}

我得到错误:

类JavaApplication2中的构造函数JavaApplication2无法应用于给定类型??????????

2 个答案:

答案 0 :(得分:3)

构造函数的语法不正确。构造函数没有返回类型。所以你定义的是常规方法。然后,当您尝试构造对象的实例时,编译器可以找到的唯一构造函数是不带参数的默认构造函数。

这是一个可能的解决方法:

package javaapplication2;

public class JavaApplication2{

    int number;

    public JavaApplication2(int number){
        this.number = number;
    }



    public static void main (String[] args){       
        JavaApplication2 object = new JavaApplication2(2); 
    }

}

或许你真的认为JavaApplication2是一种方法。那么你唯一的选择就是调用默认的构造函数。

package javaapplication2;

public class JavaApplication2{

        int number;

    public int JavaApplication2(int number){
        this.number = number;
        return number;
    }

    public static void main (String[] args){       
        JavaApplication2 object = new JavaApplication2(); 
    }

}

然而,这将是非常奇怪的。至少你想要重命名你的方法。

答案 1 :(得分:0)

构造函数不是常规方法,并且不返回任何内容。试试这个:

public JavaApplication2(int number){
    this.number = number;
}