老师,帮我看下代码,哪里可以再简化的,谢谢!

老师,帮我看下代码,哪里可以再简化的,谢谢!

public class BookTest {

     // 测试方法
	 public static void main(String[] args) {
      //实例化对象,调用相关方法实现运行效果
      Book bookone=new Book("红楼梦","曹雪芹","人民文学出版社");
      bookone.setmoney(10f);
      bookone.show();
      System.out.println("==================================");
      Book booktwo=new Book("小李飞刀","古国","中国长安出版社");
      booktwo.setmoney(55.5f);
      booktwo.show();
   
     }
}



public class Book {
  //私有属性:书名、作者、出版社、价格
     private String bookname;
     private String author;
     private String publish;
     private float money;
  //通过构造方法实现属性赋值
   public Book(String bookname,String author,String publish){
      this.bookname=bookname;
      this.author=author;
      this.publish=publish;
   }
    public String getbookname(){
        return this.bookname;
    }
    public String getauthor(){
        return this.author;
    }
    public void setmoney(float money){
        if(money<10){
            this.money=10f;
        }
        this.money=money;
    }
    public float getmoney(){
        return this.money;
    }
    /*通过公有的get/set方法实现属性的访问,其中:
    1、限定图书价格必须大于10,如果无效需进行提示,并强制赋值为10
    2、限定作者、书名均为只读属性
    */

  //信息介绍方法,描述图书所有信息
    public void show(){
        if(getmoney()<=10){
            System.out.println("图书价格最低"+getmoney()+"元");
            
        }
        System.out.println("书名:"+getbookname());
        System.out.println("作者:"+getauthor());
        System.out.println("出版社:"+this.publish);
        System.out.println("价格:"+getmoney()+"元");
    }

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
THappy 2017-12-01 13:28:24
  1. 应该在构造方法中调用setmoney()的方法来设置价格;

  2. 出版社属性也要添加set,get方法;

  3. 判断价格如果低于10输出提示信息不应该写在show()方法中,应该写在setmoney()方法中。祝学习愉快~


  • 提问者 CallMrStephen #1
    我价格的设置是调用setmoney()的没错呀。 出版社属性现在改过来了。价格的判断老师我是写在setmoney()方法中没错哦,只不过在show中还有if(getmoney()<=10){ System.out.println("图书价格最低"+getmoney()+"元"); } 这个判断是因为我要输出当价格没大于10时在前面有输出提示图书价格最低10元。
    2017-12-02 15:38:55
  • 一叶知秋519 回复 提问者 CallMrStephen #2
    为了提高用户的友好度,建议还是在设置的时候,当价格不符合的要求时,直接提示用户,“图书价格最低是10,现已默认设置为10元”。
    2017-12-03 21:24:59
  • 提问者 CallMrStephen 回复 一叶知秋519 #3
    好的,谢谢!
    2018-01-02 15:02:57
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师