【发布时间】:2014-08-07 11:39:24
【问题描述】:
考虑以下情况:我们有一个超类 Animal 和两个子类 Cat 和 Dog。 我有一个找到所有狗的方法和一个找到所有猫的方法。两者都分别返回狗或猫的列表:
List<Dog> dogs = getAll(Dog.class);
List<Cat> cat = getAll(Cat.class);
请在写以下内容时怜悯我:
现在我希望所有的动物都死掉!
但我不想写这样的东西:
facade.kill(dogs);
facade.kill(cats);
我宁愿阅读类似的内容:
facade.kill(dogsAndCats);
但我不能将这两个列表合二为一,例如:
List<Animal> dogsAndCats = ...?
你能帮我解决这个问题吗?
【问题讨论】:
标签: polymorphism hierarchy superclass