我有我的主类PayUnit,我在其中创建主要对象引用,例如touchScreen、scale和barcodeReader 因为这些是与我的 PayUnit 的 has-a
关系。这台机器还has-a
billDispenser,但billDispenser与currencyDispener确实是“is-a”关系。我是否仍然在主类中创建 billDispenser 和 currencyDispenser 对象引用,还是在 PayUnit 中创建 currencyDispenser 引用> 然后在 currencyDispenser 类中创建一个 billDispenser?
我希望这是有道理的。 OOP在这方面的标准是什么?
感谢您的帮助。
最佳答案
根据您的描述,似乎没有必要在 PayUnit
中同时引用 billDispenser
和 currencyDispenser
(因为它们不是独立的实体,其中一个是另一个的实现)。常见的做法是定义一个协议(protocol)(Java 中的接口(interface)或抽象类)来描述模块的 API(在您的例子中为 currencyDispenser
),然后在某处使用工厂方法提供实现符合该接口(interface)(在您的情况下为 billDispenser
)。我希望这回答了你的问题。
关于java - 您是否在主类或适当的关系类中创建所有对象引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11333253/