java - 使用 Java 中的 Book 类和 TestBook 类创建程序

标签 java class object

我正在尝试创建允许用户输入这本书的java程序 数字和程序将显示所选书籍的价格。我有 创建了书籍类,但大多数没有语法错误 可能存在逻辑错误并且 TestBook 类有错误 在调用输入时。你能帮助我吗?我迷路了:(这是我的代码:

class Book{

    String title;
    String author;
    double price;
    int option;

    //constructor
    Book(String title, String author, double newPrice){
        title = title;
        author = author;
        price = newPrice;

    }

    public String getTitle(){
        return title;
    }
    public String getAuthor(){
        return author;
    }
    public double getPrice(){
        return price;
    }
    public int getOption(){
        return option;
    }

    public void setPrice(int option, double price, double newPrice){
        if (option == 1){
            price = 20.00;
            newPrice = price;
        }
        else if (option == 2){
            price = 15.00;
            newPrice = price;
        }
        else if (option == 3){
            price = 23.90;
            newPrice = price;
        }
        else if (option == 4){
            price = 27.30;
            newPrice = price;
        }
        else if (option == 5){
            price = 50.00;
            newPrice = price;
        }
        else if (option == 6){
            price = 13.50;
            newPrice = price;
        }
    }
    public void setOption(int newOption){
        option = newOption;
    }
}

TestBook 类

import java.util.Scanner;

public class TestBook{
    public static void main (String[]args){

        Scanner input = new Scanner (System.in);

        //The Book List
        System.out.println("The Book List");
        System.out.println("1)How to do programming 12th Edition by Liang.\n2)Malaysian Food Recipe by Nadia Bt Mahmud.\n3)What is Islam by Ustad Manzoor Malik.\n4)Urban Legend by Christine R.M.\n5)Fundamental of Calculus by Prof. Abu.\n6)How to raise your kids by Salsabila\n");
        System.out.println("Choose your book number to know the price: ");
        int option = input.nextInt();

        Book b1 = new Book(theOption(option);// invoke the option to get the price
        System.out.println("The price is: "+ b1.getPrice);


    }
    //Method option
    public static int theOption(int option){
        return option;
    }
}

最佳答案

您在方法调用中忘记了 () :

替换

System.out.println("The price is: "+ b1.getPrice);

System.out.println("The price is: "+ b1.getPrice());

除了该错误之外,您正在调用一个不存在的构造函数:

Book b3 = new Book (8));

您的 Book 构造函数接受 3 个参数。并且您在该调用中有一个额外的 )

关于java - 使用 Java 中的 Book 类和 TestBook 类创建程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26826220/

相关文章:

java - glassfish 如何对所有应用程序使用一个 jar 文件 - CDI

java - 从数据库检索数据以使用 room 显示用户个人资料信息

javascript - 如何使用 JavaScript 更改 div 类名的一部分

c++ - 使用类的链表

php - 在 PHP 中扩展类方法

java - 解析headers信息并设置到bean中

java - 如何检索当前用户 ID 并将其放入 fragment 中

python - 关于 python MRO 以及 super() 的行为

arrays - 是否可以在 VBA 中定义结构体或对象的数组?

javascript - 根据后面出现的所需项目数组对对象数组进行排序