Java的設計模式 之 簡單的工廠模式(二)
阿新 • • 發佈:2018-03-29
attack reat nds public create mark mar ace cto
下面的代碼是稍微改進後的工廠模式
abstract class MoveAble{ public abstract void run(); } abstract class Woopen{ public abstract void attack(); } abstract class Food{ public abstract void eat(); } interface AllFactory{ public MoveAble createM(); public Woopen createW(); public Food createF(); } class Car extends MoveAble{ public void run(){ System.out.println("Car is runing"); } } class AK47 extends Woopen{ public void attack(){ System.out.println("da da da"); } } class Apple extends Food{ public void eat(){ System.out.println("Name"); } } class Broom extends MoveAble{ public void run(){ System.out.println("flaying ...."); } } class MagicStick extends Woopen{ public void attack(){ System.out.println("Bang ...."); } } class MashRoom extends Food{ public void eat(){ System.out.println("Ya you du !!!"); } } class DefaultFactory implements AllFactory{ public MoveAble createM(){ return new Car(); } public Woopen createW(){ return new AK47(); } public Apple createF(){ return new Apple(); } } class MagicFactory implements AllFactory{ public MoveAble createM(){ return new Broom(); } public Woopen createW(){ return new MagicStick(); } public Food createF(){ return new MashRoom(); } }
Java的設計模式 之 簡單的工廠模式(二)