8.6 Composite パターンを適応したWallet クラス

プログラム

C8_6

プログラムの説明

Compositeパターンを適応したWalletクラス

クラス図を見てください。Valueインタフェースを実装した貨幣(Coin)クラス、Walletクラスがあります。WalletクラスはValueインタフェースを実装したオブジェクトを管理できます。

・add(value:Value):void
引数のValueインタフェースを実装したオブジェクトを追加します。

・remove(number:int):Value
Valueインタフェースを実装したオブジェクトを取り出します。ただし、Walletオブジェクト(財布)からは無くなります。引数の整数の値はオブジェクトの価値です。Coin50オブジェクトを取り出す場合は50が引数になります。

・size():int
Valueオブジェクトの数を返却します。

・getValue():int
Valueオブジェクトの価値の合計を返却します。