请问老师,以下代码哪里需要改善?谢谢!
来源:1-7 编程练习
weixin_慕码人4149644
2019-12-26 01:34:51
package com.immoc.animal;
public class Book {
//私有属性:书名、作者、出版社、价格
private String bookName;//书名
private String writer;//作者
private String press;//出版社
private double price;//价格
//通过构造方法实现属性赋值
public Book(String bookName,String writer,String press,double price) {
this.setBookName(bookName);
this.setWriter(writer);
this.setPress(press);
this.setPrice(price);
}
/*通过公有的get/set方法实现属性的访问,其中:
1、限定图书价格必须大于10,如果无效需进行提示,并强制赋值为10
2、限定作者、书名均为只读属性
*/
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getWriter() {
return writer;
}
public void setWriter(String writer) {
this.writer = writer;
}
public String getPress() {
return press;
}
public void setPress(String press) {
this.press = press;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
if(price<=10) {
System.out.println("图书价格最低10元");
this.price=10;
}
else{
this.price = price;
}
}
//信息介绍方法,描述图书所有信息
public void information() {
System.out.println("书名:"+bookName);
System.out.println("作者:"+writer);
System.out.println("出版社:"+press);
System.out.println("价格:"+price+"元");
}
}==========================================
package com.immoc.animal;
public class BookTest {
public static void main(String[] args) {
//实例化对象,调用相关方法实现运行效果
Book one=new Book("红楼梦","曹雪芹","人民文学出版社",10);
one.information();
System.out.println("=============================");
Book two=new Book("小李飞刀","古龙","中国长安出版社",55.5);
two.information();
}
}
1回答
好帮手慕雪
2019-12-26
1-7要求“限定作者、书名均为只读属性”,也就是说,同学不应该增加setBookName()和setWriter()。如果解决了你的疑惑,请采纳,祝学习愉快~
相似问题