Java 使用字符串参数实例化对象时出现问题

标签 java string instantiation

我正在尝试进行分配,但在实例化具有字符串参数的对象时遇到问题。到目前为止,当我编译并运行应用程序时,它返回字符串值“Null”,而不是我期望的值。

这是我的抽象父类(super class)

public abstract class Book
{
//Declaration of class variable
private String title;
protected double price;

// contructor for Book class objects
public Book(String bookTitle)
    {
        bookTitle = title;
    }
//method that gets and returns books title
public String getTitle()
    {
        return title;
    }
//method that gets and returns books price
public double getPrice()
    {
        return price;
    }
//abstract method with no parameters
public abstract void setPrice();
}

这是我的子类

public class Fiction extends Book
{
//subclass contructor
public Fiction(String bookTitle)
{
    //calling superclass constructor
    super(bookTitle);
}
//override annotation and setPrice method override
@Override
public void setPrice()
{
    price = 19.99;
}
}

这是我的主要方法类,其中应该用标题 The White Unicorn 实例化对象 fictionBook。但是,出于某种原因,我的 println 打印出了 null

public class BookTester
{
//Main method
public static void main(String[] args)
{
    //Instantiate object
    Fiction fictionBook = new Fiction("The White Unicorn");
    NonFiction nonFictionBook = new NonFiction("Autobiography of Curtis Sizemore");
    //call to the setPrice() method
    fictionBook.setPrice();
    nonFictionBook.setPrice();
    //Print information on books
    System.out.println("The Fiction book titled \"" + fictionBook.getTitle() + "\"costs $" + fictionBook.getPrice());
}
}

我不知道问题出在哪里。任何人都可以帮助我吗?我还有一个非小说类书籍的子类,但我还没有达到这一点。

最佳答案

public Book(String bookTitle)
    {
        bookTitle = title;
    }

您将参数设置为属性值——可能与您的预期相反?

关于Java 使用字符串参数实例化对象时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10791657/

相关文章:

java - 如何将链表附加到另一个链表的后面?

java - 如何使用 IntelliJ 解决 Scala 中的异常?

c# - 通过在字符串中搜索子字符串文本来获取字符串的子字符串?

java - 在 Java 中创建对象时避免使用 'new' 关键字的好处

java - 通过泛型参数实例化类 - 哪种方法更好

c++ - 我可以只对一个模板使用 `-fno-implicit-templates` 功能吗?

java - 如何在另一个类中调用 ListView 然后清除它

java - spring integration dsl filter 代替 filter 方法注解

java - 在字符串中按字母顺序对字符进行排序

c - 复制一个 char*