回答編集履歴
1
自販機の例について解説を追加
test
CHANGED
@@ -112,6 +112,8 @@
|
|
112
112
|
|
113
113
|
購入者(クライアント)クラスから、自販機(マシーン)クラスを利用します。
|
114
114
|
|
115
|
+
ボタンを押すと、お茶かコーヒーが出てくるだけの、簡単な例です。
|
116
|
+
|
115
117
|
|
116
118
|
|
117
119
|
さて、インターフェイスがどのような意味を持っているかというと、
|
@@ -120,9 +122,15 @@
|
|
120
122
|
|
121
123
|
|
122
124
|
|
125
|
+
今回の例では「Bottle」がインターフェイスで、「DrinkA」「DrinkB」が、
|
126
|
+
|
127
|
+
インターフェイスに規定された「open」メソッドを実装しています。
|
128
|
+
|
129
|
+
|
130
|
+
|
123
131
|
これによって、利用側の購入者クラスから、
|
124
132
|
|
125
|
-
**IF文を消し**ているし、「DrinkA
|
133
|
+
**IF文を消し**ているし、「DrinkA/B」という**実装クラスも消し**ています。
|
126
134
|
|
127
135
|
これで、IF文で分岐して、newをベタ書きするのに比べて、**メンテナンス**しやすくなります。
|
128
136
|
|