Java 建造师罚款不足
我得到一个错误,说我的构造函数书(String,int)在Dictionary类中未定义。我检查了所有其他内容,并尝试重做我的程序,但仍然有错误。有解决这个问题的办法吗 图书类别: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
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代码。如果你觉得这有帮助,请接受这个答案,并向上投票,以便将来能惠及他人。