- ねねっちと一緒にプログラムを勉強するスレ第2話 [無断転載禁止]©2ch.net
21 :デフォルトの名無しさん[sage]:2017/03/21(火) 00:09:43.10 ID:LsnLNCD2 - >>17
横だけど、それHead First のデザインパターンの序章である奴だよね。 飛べない鳥とか振る舞いのインターフェースと実装をすれば対応出来る奴じゃん。 オブジェクト指向の基本理念は失敗とかディスってる様だけど、オブジェクト指向を理解出来てない馬鹿がオブジェクト指向を語るなよ。
|
- ねねっちと一緒にプログラムを勉強するスレ第2話 [無断転載禁止]©2ch.net
23 :デフォルトの名無しさん[sage]:2017/03/21(火) 07:15:17.71 ID:LsnLNCD2 - >>22
以下になるけど、Strategyで実装すれば書けるだろ。 package test; class MiniDuckSimulator { public static void main(String[] args) { Duck model = new ModelDuck(); model.performFly(); } } class ModelDuck extends Duck { public ModelDuck() { flyBehavior = new FlyNoWay(); } } abstract class Duck { FlyBehavior flyBehavior; public Duck() { } public void performFly() { flyBehavior.fly(); } }
|
- ねねっちと一緒にプログラムを勉強するスレ第2話 [無断転載禁止]©2ch.net
24 :デフォルトの名無しさん[]:2017/03/21(火) 07:16:06.90 ID:LsnLNCD2 - 書き込み制限が出た為、分割。
interface FlyBehavior { public void fly(); } class FlyNoWay implements FlyBehavior { public void fly() { System.out.println("I can't fly"); } } class FlyWithWings implements FlyBehavior { public void fly() { System.out.println("I'm flying!!"); } }
|