0

メインクラスのPayUnitがあり、 touchScreenscalebarcodeReaderなどのメインオブジェクト参照を作成します。これらはPayUnithas-aとの関係です。このマシンもbillDispenserですが、billDispenserは実際にはcurrencyDispenerとの関係です。メインクラスでbillDispenserおよびcurrencyDispenserオブジェクト参照を作成しますか、それともPayUnitでcurrencyDispenser参照を作成してからcurrencyDispenserでbillDispenser作成しますか?has-a クラス?

それが理にかなっていることを願っています。この点でのOOPの標準は何ですか?

助けてくれてありがとう。

4

1 に答える 1

2

billDispenserあなたの説明から、との両方への参照を持つ必要はないようcurrencyDispenserですPayUnit(それらは別々のエンティティではなく、それらの1つは他の実装であるため)。一般的な方法は、モジュールのAPI(この場合は)を記述するプロトコル(Javaのインターフェイスまたは抽象クラス)を定義し、そのインターフェイスにcurrencyDispenser準拠する実装をどこかにファクトリメソッドで提供することです(billDispenser場合)。これがあなたの質問に答えることを願っています。

于 2012-07-04T17:28:31.673 に答える