请问代码正确吗
来源:1-7 编程练习
焰痕
2019-11-26 15:28:25
public class BookTest {
private String name;
private String writer;
private String company;
private double price;
void setName(String name){
this.name=name;
}
String getName(){
return name;
}
void setWriter(String writer){
this.writer=writer;
}
String getWriter(){
return writer;
}
void setCompany(String company){
this.company=company;
}
String getCompany(){
return company;
}
void setPrice(double price){
this.price=price;
}
double getPrice(){
if(price<10){
return 10.0;
}else{
return price;
}
}
// 测试方法
public static void main(String[] args) {
BookTest b1= new BookTest();
b1.setName("红楼梦");
b1.setWriter("曹雪芹");
b1.setCompany("人民文学出版社");
b1.setPrice(10.0);
if(b1.getPrice()<=10){
System.out.println("图书价格最低10元");
}
System.out.println("书名:"+b1.getName());
System.out.println("作者:"+b1.getWriter());
System.out.println("出版社:"+b1.getCompany());
System.out.println("价格:"+b1.getPrice());
System.out.println("=============================");
BookTest b2= new BookTest();
b2.setName("小李飞刀");
b2.setWriter("古龙");
b2.setCompany("中国长安出版社");
b2.setPrice(55.5);
if(b2.getPrice()<=10){
System.out.println("图书价格最低10元");
}
System.out.println("书名:"+b2.getName());
System.out.println("作者:"+b2.getWriter());
System.out.println("出版社:"+b2.getCompany());
System.out.println("价格:"+b2.getPrice());
}
}1回答
同学你好,代码完成的不错,但是在实现上还有点问题:
1、根据题目要求, 需要设计构造函数实现对属性赋值,而同学的代码中没有编写,建议进行无参、有参的构造方法添加。如:

2、 建议get()方法中,不要进行设置值的操作,因为在Java的封装中,一般get()方法的作用是进行获取值,set进行赋值的操作

3、根据题目要求,同学的代码中缺少信息介绍方法来描述图书所有信息,如
如上所改,在测试方法中,直接调用构造方法创建图书对象,调用介绍方法来描述图书所有信息。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
相似问题