1700456344
}
1700456345
1700456346
//覆写销售价格
1700456347
1700456348
@Override
1700456349
1700456350
public int getPrice(){
1700456351
1700456352
//原价
1700456353
1700456354
int selfPrice=super.getPrice();
1700456355
1700456356
int offPrice=0;
1700456357
1700456358
if(selfPrice>4000){//原价大于40元,则打9折
1700456359
1700456360
offPrice=selfPrice*90/100;
1700456361
1700456362
}else{
1700456363
1700456364
offPrice=selfPrice*80/100;
1700456365
1700456366
}
1700456367
1700456368
return offPrice;
1700456369
1700456370
}
1700456371
1700456372
}
1700456373
1700456374
很简单,仅仅覆写了getPrice方法,通过扩展完成了新增加的业务。书店类BookStore需要依赖子类,代码稍作修改,如代码清单6-5所示。
1700456375
1700456376
代码清单6-5 书店打折销售类
1700456377
1700456378
public class BookStore{
1700456379
1700456380
private final static ArrayList<IBook>bookList=new ArrayList<IBook>();
1700456381
1700456382
//static静态模块初始化数据,实际项目中一般是由持久层完成
1700456383
1700456384
static{
1700456385
1700456386
bookList.add(new OffNovelBook(“天龙八部”,3200,“金庸”));
1700456387
1700456388
bookList.add(new OffNovelBook(“巴黎圣母院”,5600,“雨果”));
1700456389
1700456390
bookList.add(new OffNovelBook(“悲惨世界”,3500,“雨果”));
1700456391
1700456392
bookList.add(new OffNovelBook(“金瓶梅”,4300,“兰陵笑笑生”));
1700456393
[
上一页 ]
[ :1.700456344e+09 ]
[
下一页 ]