【问题标题】:Creating a Java container class创建 Java 容器类
【发布时间】:2018-02-01 00:56:49
【问题描述】:

我在学校得到了一个 Java 作业,要求我创建一个 StockQuote 类。这通常很容易,但是老师将其称为简单的容器类。我很困惑,因为我读到的所有内容都说容器类是 java.util.Vector、java.util.Hashtable 和 java.util.HashSet 之类的东西。我觉得他用这个词来表示别的东西,甚至可能只是为了表示一个简单的 StockQuote 类。我尝试给他发电子邮件,但他没有回复,我想尽快完成这项任务。以下是作业的描述:

“StockQuote 类或接口。这是一个简单的容器类。通常你不会为容器类使用接口,但你可以。关于何时使用接口的一个规则是决定是否有可能类的多个实现。如果可以实现多个实现,那么使用接口肯定是有意义的。对于像这样的简单容器类,可能只有一个实现"

任何朝着正确方向的帮助或推动都会很棒。谢谢

【问题讨论】:

  • 你混淆了容器和集合
  • 我假设 StockQuote "contains" 引号
  • 如果这是您收到的唯一描述,那么您的导师的期望不是很清楚。 “容器”是一个非常通用的术语,但在 Java 中通常被理解为在 Scary 的 Wikipedia 文章中:一种可以存储可变数量的其他对象的数据结构。很难看出这如何适用于名为StockQuote(单数)的类,当然没有进一步的细节。也许他的意思是“域对象”、JavaBean、POJO 之类的东西。

标签: java containers


【解决方案1】:

在你的情况下This a simple container class. == This a simple class.

一般来说,你的类可能有一些其他类型的字段,如字符串、集合等。如果是这样,你会说我有一个容器类,因为它包含/存储一些数据。 接口没有字段,所以它们不是容器。

【讨论】:

  • 谢谢 我感觉这就是答案。因此,如果 StockQuote 类的构造函数使用依赖注入并将 StockService 类型的对象(赋值中的另一个类)注入构造函数,StockQuote 将是一个容器类,因为它包含一个 StockService 类型的对象......对吗?
  • 是的,它以某种方式包含一些东西。但是您已经询问了聚合与组合。见stackoverflow.com/questions/1644273/…
猜你喜欢
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 2018-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-05
  • 2012-04-30
相关资源
最近更新 更多