正确答案如下

正确答案如下

http://img1.sycdn.imooc.com//climg/5aca4c8d00011e1204590464.jpg

http://img1.sycdn.imooc.com//climg/5aca4cce00012a7b04660555.jpg

运行代码是正确的,老师帮我查看一下逻辑有没有需要优化的地方

正在回答

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

2回答

几点修订建议:

1、同学在Book类中,出版社变量名称的首字母应小写。

2、在setPrice方法中,根据题目要求,当用户录入小于10时,并强制赋值为10。可以在该方法的if语句中添加一行代码:this.price = 10;

3、根据题目的要求设计构造函数实现对属性赋值,你的Book类中没有构造方法,你需要创建一个带参的构造方法。并且限定作者、书名均为只读属性,只读属性就是只有get方法而没有set方法。

4、另外,请同学以后提出问题的时候不要上传图片,而是直接复制代码,这样方便我们调试程序。如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


  • Felixhh 提问者 #1
    非常感谢!
    2018-04-09 23:58:30
提问者 Felixhh 2018-04-10 00:29:43

老师 经过您的指点 我做出了重新修改 您查看一下:

这是对象:

package com.imooc.book;

public class BookTest {

  // 测试方法

public static void main(String[] args) {

//实例化对象,调用相关方法实现运行效果

System.out.println("图书价格最低10元");

Book one=new Book("红楼梦","曹雪芹","人民文学出版社",10.0);

one.books();

System.out.println("=========================");

Book two=new Book("小李飞刀","古龙","中国长安出版社",55.5);

two.books();

}

}

下面是类:

package com.imooc.book;

public class Book {

    private String bookname;//书名

    private String author;//作者

    private String PubliShers;//出版社

    private double price;//价格 

    public Book(String bookname,String author,String PubliShers,double price){

    this.bookname=bookname;

    this.author=author;

    this.PubliShers=PubliShers;

    this.price=price;

    }    

public String getBookname() {

return bookname;

}

public String getAuthor() {

return author;

}

public String getPubliShers() {

return PubliShers;

}

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 books(){

System.out.println("书名:"+this.bookname);

System.out.println("作者:"+this.author);

System.out.println("出版社:"+this.PubliShers);

System.out.println("价格:"+this.price+"元");

}

}


您看 这代码运行都正常,您再查看一下 逻辑是否有问题

  • 同学使用调用构造方法,在录入价格小于10元时,输出的还是录入时的价格,不会强制改为10.0元,应该在通过构造方法的时候,调用类中的get/set方法,即this.setPrice(price);
    2018-04-23 11:28:16
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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