
you are here
495
12
章
Compound
パターン
public interface Quackable {
public void quack();
}
public class MallardDuck implements Quackable {
public void quack() {
System.out.println("
ガーガー
");
}
}
public class RedheadDuck implements Quackable {
public void quack() {
System.out.println("
ガーガー
");
}
}
Quackable
は
1
つのことだけ
をうまくやればいいのです。そ
れはガーガー鳴くことです!
標準的なマガモ
面白いシミュレータにしたければ、カ
モの種類に複数のバリエーションが必
要です。
カモとの再会
すでにお話ししたとおり、今回もカモと一緒に仕事をします。今回は、同じ解決
策の中でパターンが共存し、協力さえできることをカモたちが教えてくれるでしょう。
これから多数のパターンを使ってカモシミュレータをゼロから作り直し、興味深
い機能を追加していきます。さっそく始めましょう。
お話ししたように、ゼロから始めます。今回、カモは
Quackable
インタフェースを実装
します。そうすれば、シミュレータの中の何がガーガー鳴く(
quack
)ことができるか
わかります(マガモ、アメリカホシハジロ、鴨笛など)。また、ゴムのアヒルも忍び込
んでいるかもしれません。 ...