Welcome

首页 / 软件开发 / 数据结构与算法 / hand first设计模式 - 工厂模式

hand first设计模式 - 工厂模式2012-01-05 javaeye pan_java工厂模式定义,创建一个对象接口,但由子类决定要实例化的类是哪一个.工厂方法让类把实例化推迟到子类.

抽象的比萨商品类

Java代码

public abstract class PiazzStore {   public Piazz getPiazz(String name){   Piazz piazz = createPiazz(name);    piazz.make();    return piazz;    }     //让子类去实现    public abstract Piazz createPiazz(String name);  }
中国比萨商店

Java代码

public class ChinaPiazzStore extends PiazzStore {   @Override  public Piazz createPiazz(String name) {  // TODO Auto-generated method stub  if(name.equals(PiazzEnum.ChinaPiazzOnHuAn.getVal())){   return new HuAnPiazz();  }else if(name.equals(PiazzEnum.ChinaPiazzOnHuBei.getVal())){   return new HuBeiPiazz();  }else{   throw new RuntimeException("piazz name is error");  }  }  }