使用不同的组件(功能)构建自定义 Java 个对象

Building custom Java objects with different components (capabilities)

假设我有多个具有不同功能的对象。让我们假设这些对象并没有太多共同点。

我想要另一个对象,它是这些对象的组合。我想知道什么是最好的方法。例如,如果我们将这些对象称为 A、B 和 C,我想要一个包含这些 A、B 和 C 的容器对象。关键是,容器可以只用它需要的东西来构造,例如如果它只需要 A,它只会有 A。如果它只需要 A 和 C,它只会包含 A 和 C。我想知道最有效的方法是什么?我总是可以将这些 A、B 和 C 绑定在一些标记界面后面,但我觉得这些 A、B 和 C 可能不是很相关(功能集非常不同)。此外,如果绑定在任意接口后面,则需要进行一些转换才能获得所需的对象。

对我要解决的问题有什么建议吗?我想一些 GUI 框架可能会实现我想要的,例如根据调用者的需求拥有具有不同功能的容器。

如果您有任何理由希望它们出现在作品中,它们必须有一些共同点。我认为最类似于 Java 的方法是对所有这些对象使用一个通用的 superclass,然后将这些对象中的一些 Collection 作为字段在另一个 [=14= 中实现].