我正在学习Java。我正在尝试使用复合设计模式。我正在尝试使用以下逻辑。(不要笑,我知道这是非常基本的:))
Item -> interface
Folder -> class
File -> class
在文件夹类中,我可以创建Item的数组列表来存储文件信息吗?
ArrayList<Item> info = ArrayList<Item>();
还是应该使用Folder Arraylist?
ArrayList<Folder> info = ArrayList<Folder>();
我不知道接口是否可以存储真实数据,因为仅函数定义就没有变量。
感谢您帮助新手:)
两者都可以(通过语法更正)
List<Item> info = new ArrayList<Item>();
关于此评论:
我不知道接口是否可以存储真实数据,因为仅函数定义就没有变量。
接口不仅仅提供函数定义。最重要的是,它们定义了一个type。info
如上声明,是类型的对象的列表Item
。这些对象肯定可以存储数据。
例如,请考虑以下内容:
interface Item { ... }
class Folder implements Item { ... }
Item it = new Folder();
现在,it
引用的实例Folder
,它是Item
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句