首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

怎么区别子类和父类

2012-03-14 
如何区别子类和父类现有一个arraylist。里面存有若干个Item对象和DiscountedItem对象。DiscountedItem类是It

如何区别子类和父类
现有一个arraylist。里面存有若干个Item对象和DiscountedItem对象。DiscountedItem类是Item类的子类。

Item类和DiscountedItem类都有字段price。而DiscountedItem购买10以上会有优惠,所以item对象和DIscountedItem对象计算价格的方法不同。

求arraylist里所有对象的价格的总和。

我的思路是:

for(int i = 0; i < arraylist.size(); i++) {
  if(arraylist.get(i)是item类){
  省略.................................
  }

  if(arraylist.get(i)是DiscountedItem类){
  省略.................................
  }
}

现在问题是,不知道用什么方法判断循环中arraylist.get(i)是item类还是DiscountedItem类。

[解决办法]
用反射机制可不可以呢,要不然就在这两个类里加一个变量,0表示父类,1表示子类
[解决办法]
instanceof
[解决办法]
用instanceof判断
[解决办法]
同上。。。

热点排行