2016-04-03 39 views
1

我得到一個錯誤,說我的構造函數Book(String,int)在我的Dictionary類中是未定義的。我檢查了一切,並嘗試重做我的程序仍然有一個錯誤。解決這個問題的任何解決方案?構造函數是Underfined

圖書類:

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; 
} 

}

+7

好,圖書(字符串,整數)是不確定的。你只有一個Book(int code,String title,double price,int quantity,String author,int numPages)構造函數。 – Eran

+4

您的文章中的「Dictionary」類與Book類具有相同的代碼 – kkaosninja

+0

Eran是對的,並且btw您的Dictionary代碼實際上是Book代碼。 – zyexal

回答

2

當你調用

super(author,numPages); 
兒童類字典


您需要在Book類中定義另一個構造函數,如

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

解決此錯誤。根據你的唯一的構造

+0

如果你覺得這有幫助,請接受這個答案,並upvote,以便它可以在未來受益於其他人。 –

0

public Book(int code, String title, double price, int quantity, String author, int numPages) 

在main方法試試:代替

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

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