package make; class Book{ private String title; private double price; public Book(String t,double p){ //定义构造方法 setTitle(t); //调用本类方法 setPrice(p); //调用本类方法 } public void setTitle(String t){ title=t; //设置title的属性内容 } public void setPrice(double p){ price=p; //设置price的属性内容 } public String getTitle(){ return title; //取得title属性内容 } public double getPrice(){ return price; //取得price属性内容 } public void etInfo(){ //此方法将由对象调用 System.out.println("图示名称:"+title+" 价格:"+price); } }public class Other { public static void main(String[] args) { Book book=new Book("java",55); //声明并实例化对象 book.etInfo(); //调用方法 } } //我把public double getPrice(){ return price; }与 public String getTitle(){ return title; }这两个方法去掉,运行程序结果还跟原来一样,我就不明白要不要return对程序有什么影响吗?
1 回答
已采纳
望远
TA贡献1017条经验 获得超1032个赞
这不是return的问题,而是Java封装的问题,封装的好处在哪里?
假如卖书时要打8折销售那么:
public double getPrice(){ return price*0.8; }
在获取图书信息的时候稍加修改:
public void etInfo(){ //此方法将由对象调用 String title=getTitle(); double price=getPrice(); System.out.println("图示名称:"+title+" 价格:"+price); }
而这样一来,看似代码量变多了,但是如果以后需求变动,我想打7折那么只要修改getPrice()方法就行,提高程序健壮性,并且向外界提供了获取图书名称和价格的接口,便于程序拓展。
添加回答
举报
0/150
提交
取消