当子类存储在超类变量中时从子类获取数据

时间:2017-05-17 20:04:19

标签: java android

我很难理解解决这个问题的最佳方法。假设我们有一个数据模型系列,它存储了一个Pet变量。我还有其他类扩展 Pet,例如DogCatFish等。我需要List<Family>但是当我遍历它时,我需要访问Pet子类。 我应该在Pet类中有一个存储宠物类型的变量吗?或者我应该使用instanceof?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

  

我需要一个List,但是当我遍历它时,我需要访问Pet的子类。

为什么?

Class Pet应具有通用方法,其所有子类都会覆盖特殊行为。使用宠物列表的代码应该只调用那些常用方法。