Java 建造师罚款不足

Java 建造师罚款不足,java,Java,我得到一个错误,说我的构造函数书(String,int)在Dictionary类中未定义。我检查了所有其他内容,并尝试重做我的程序,但仍然有错误。有解决这个问题的办法吗 图书类别: public class Book{ private String author; private int numPages; public Book(int code, String title, double price, int quantity, String author, int

我得到一个错误,说我的构造函数书(String,int)在Dictionary类中未定义。我检查了所有其他内容,并尝试重做我的程序,但仍然有错误。有解决这个问题的办法吗

图书类别:

public class Book{
    private String author;
    private int numPages;

    public Book(int code, String title, double price, int quantity, String author, int numPages){
        this.author = author;
        this.numPages = numPages;
    }

    //Getters
    public String getAuthor(){
        return this.author;
    }
    public int getNumPages(){
        return this.numPages;
    }

    //Setters
    public void setAuthor(String author){
        this.author = author;
    }
    public void setNumPages(int numPages){
        this.numPages = numPages;
    }

    //toString
    @Override
    public String toString(){
        String outputBookDes = "";
        outputBookDes += "Author: "+ this.author;
        outputBookDes += "Number Pages: "+ this.numPages;
        return outputBookDes;
    }
}
字典类:

public class Dictionary extends Book{
private String language;
private int numDefinitions;

public Dictionary(String author, int numPages, String language, int numDefinitions){
    super(author,numPages);
    this.language = language;
    this.numDefinitions = numDefinitions;
}

// Getters
public String getLanguage(){
    return this.language;
}
public int getNumDefinitions(){
    return this.numDefinitions;
}

//Setters
public void setLanguage(String language){
    this.language = language;
}
public void setNumDefinitions(int numDefinitons){
    this.numDefinitions = numDefinitions; 
}

//Ratio method
public double getRatio(){
    double ratioTotal = this.numDefinitions / getNumPages();
    return ratioTotal;
}
}

当您呼叫时

super(author,numPages);
在儿童类词典中,
您需要在Book类中定义另一个构造函数,如

public Book(String author,int numPages) {
     this.author = author;
     this.numPages = numPages;
}  

要解决此错误。

根据您唯一的构造函数:

public Book(int code, String title, double price, int quantity, String author, int numPages) 
在主要方法中,请尝试:

Book book = new Book(12, "title", 34d, 56, "author", 78);
而不是:

Book book = new Book("34", 56);

嗯,Book(String,int)是未定义的。你只有一本书(int代码、字符串标题、双倍价格、int数量、字符串作者、int numPages)构造函数。你帖子中的“Dictionary”类的代码与Book类的代码相同。没错,顺便说一句,你的Dictionary代码实际上就是Book代码。如果你觉得这有帮助,请接受这个答案,并向上投票,以便将来能惠及他人。