我是Java的新手。我正在编写一个类,其中构造函数必须检查price参数并确保它不是负数。如果它是负数,则必须将价格设置为零。我检查价格时收到stackoverflow错误。我可以为我做错的事寻求帮助吗?
public class Book
{
private String title;
private String author;
private String isbn;
private int pages;
private boolean pback;
private double price;
/**
* Constructor for objects of class Book
*/
public Book(String bookTitle, String bookAuthor, String bookCode, int bookPages, boolean paperback, double bookRetail)
{
title = bookTitle;
author = bookAuthor;
isbn = bookCode;
pages = bookPages;
pback = paperback;
price = bookRetail;
}
/**
* @returns title
*/
public String gettitle()
{
return title;
}
/**
* @returns author
*/
public String getauthor()
{
return author;
}
/**
* @returns ISBN#
*/
public String getisbn()
{
return isbn;
}
/**
* @return number of pages
*/
public int getpages()
{
return pages;
}
/**
* @return is book paperback
*/
public boolean getpback()
{
return pback;
}
/**
* @return retail price
*/
public double getprice()
{
if(getprice() < 0)
{
return 0;
}
else
{
return price;
}
}
}