gpt4 book ai didi

java - 只允许 ArrayList 中的特定类型

转载 作者:行者123 更新时间:2023-11-29 06:08:55 26 4
gpt4 key购买 nike

有没有办法将 ArrayList 类子类化为只允许特定类(或其子类)的对象。
具体来说,我有一个名为 RecordStatus 的基类,我需要使用基于该类的对象创建 ArrayList。
我知道基于 ArrayList<RecordStatus> 创建一个类很容易但是,每次我从数组中检索一个元素时,我都需要将它转换为原始类。
有更简单的方法吗?

最佳答案

Is there a way to subclass the ArrayList class to only allow objects of a specific class (or subclass thereof). Specifically, I have a base class called RecordStatus and I need to create ArrayLists with objects based on this class.

这正是 Java 中的通用构造允许您执行的操作。请注意,您不必强制转换来自 ArrayList<RecordStatus> 的实例。只要RecordStatus的所有子类具有相同的 API。如果子类具有不同的方法/字段,您只需要这样做。例如,如果 RecordStatus有一个方法 setStatus ,子类也是如此,不需要强制转换,因为 Java 多态性的动态分派(dispatch)将根据在运行时调用方法的实例类型确保实现的方法是正确的。

关于java - 只允许 ArrayList 中的特定类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7704617/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com