-2

我正在尝试创建一个类并在其中创建两个构造函数。我已经创建了它,因为我已经完成了所有以前的类和构造函数,但由于某种原因,它一直告诉我向两个构造函数添加返回类型。

我试图看看我创建的这个是否与我以前的构造函数有什么不同,但看不出有什么不同。

谁能看到我要去哪里错了?

public class Book {

    //instance variables
    //accessSpec type varname;
    private String title;
    private String author;
    private double price;

    //constructors
    public initialiseInstanceFields() {
        title = "";
        author = "";
        price = 0.00;
    }

    public initialiseInstanceFields(String titleIn, String authorIn, double priceIn) {
        title = titleIn;
        author = authorIn;
        price = priceIn;
    }


    //methods
    //accessSpec returntype varname(argList){}
    //return the title
    public String getTitle() {
        return title;
    }

}//end class
4

1 回答 1

3

构造函数的名称必须与类名相同。initialiseInstanceFields是普通方法而不是构造函数,因此需要返回类型。如果您希望将其视为构造函数,则使用类的名称重新定义它,即将构造Book函数定义更改为:

public Book()
{
    title = "";
    author = "";
    price = 0.00;
}

public Book(String titleIn, String authorIn, double priceIn)
{
    title = titleIn;
    author = authorIn;
    price = priceIn;
}
于 2013-10-06T16:27:48.960 回答