我这2条报错是为什么啊

我这2条报错是为什么啊

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

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

我这2条报错是为什么啊

http://img1.sycdn.imooc.com/climg//596861700001339a07620450.jpg

http://img1.sycdn.imooc.com/climg//596861710001d0c507620450.jpg


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

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

3回答
Tender10 2017-07-14 16:29:13

Book类中的构造方法写错了应该是public  Book(String name,String writer,String chubanshe,double price){},把中间的void去掉即可。

提问者 慕仙6264227 2017-07-14 16:06:53


package demo.dxz;

public class Book {
	  //私有属性:书名、作者、出版社、价格
	    private String name;
	    private String writer;
	    private String chubanshe;
	    private double price;
	  //通过构造方法实现属性赋值
	  public Book(){	      
	  }
	  public void Book(String name,String writer,String chubanshe,double price){
		    this.name = name;
	        this.writer = writer;
	        this.setChubanshe(chubanshe);
	        this.setPrice(price);
	  }
	    /*通过公有的get/set方法实现属性的访问,其中:
	    1、限定图书价格必须大于10,如果无效需进行提示,并强制赋值为10
	    2、限定作者、书名均为只读属性
	    */
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getWriter() {
		return writer;
	}
	public void setWriter(String writer) {
		this.writer = writer;
	}
	public String getChubanshe() {
		return chubanshe;
	}
	public void setChubanshe(String chubanshe) {
		this.chubanshe = chubanshe;
	}
	public double getPrice() {
		return price;
	}
	public void setPrice(double price) {
		if(price>=10){
		this.price = price;
		}else{
			System.out.println("输入价格无效!");
			this.price=10;
		}
	}   
	  //信息介绍方法,描述图书所有信息
	public void inf(){
		System.out.println("书名:"+name);
        System.out.println("作者:"+writer);
        System.out.println("出版社:"+chubanshe);
        System.out.println("价格:"+price);
	}


	}


Tender10 2017-07-14 14:30:26

你检查一下你的构造方法中的参数是否有问题,或者你将Book类的代码贴出,你贴出的两张图片都是BookTest类。

  • 提问者 慕仙6264227 #1
    贴错了。。。老师你再看一下 package demo.dxz; public class Book { //私有属性:书名、作者、出版社、价格 private String name; private String writer; private String chubanshe; private double price; //通过构造方法实现属性赋值 public Book(){ } public void Book(String name,String writer,String chubanshe,double price){ this.name = name; this.writer = writer; this.setChubanshe(chubanshe); this.setPrice(price); } /*通过公有的get/set方法实现属性的访问,其中: 1、限定图书价格必须大于10,如果无效需进行提示,并强制赋值为10 2、限定作者、书名均为只读属性 */ public String getName() { return name; } public void setName(String name) { this.name = name; } public String getWriter() { return writer; } public void setWriter(String writer) { this.writer = writer; } public String getChubanshe() { return chubanshe; } public void setChubanshe(String chubanshe) { this.chubanshe = chubanshe; } public double getPrice() { return price; } public void setPrice(double price) { if(price>=10){ this.price = price; }else{ System.out.println("输入价格无效!"); this.price=10; } } //信息介绍方法,描述图书所有信息 public void inf(){ System.out.println("书名:"+name); System.out.println("作者:"+writer); System.out.println("出版社:"+chubanshe); System.out.println("价格:"+price); } }
    2017-07-14 16:06:05
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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