【发布时间】:2016-07-01 03:08:21
【问题描述】:
我有许多实现接口的类。
我可以像这样定义堆栈、队列和ArrayLists 吗?
ArrayList<Class<? extends BaseClass>>
存储对象?在我的场景中,每个对象都来自 Stack 或 ArrayList 中的不同类? 这种实施的优点和缺点是什么? 我是 Java 新手,因此是这个问题。对此有何替代建议?
【问题讨论】:
-
你可以。利弊取决于你需要什么。
-
您定义的列表是类,而不是这些类的对象。如果您想要扩展
BaseClass的对象列表,您正在寻找ArrayList<BaseClass>。 -
哦,谢谢。我在那里也很困惑。我是这样写的,因为当我们声明 ArrayLists 时,我们在里面给出了类名。所以 ArrayList
将允许我保存所有实现接口 BaseClass 的类的对象?