文章标题
2015-04-21 20:20
211 查看
工厂模式分简单和抽象两种。
简单工厂模式
创建一个专门类(工厂),来负责大量有共同接口的类实例化。面向对象三大特性(多态、抽象、封装)之一多态的使用。
上面的例子中,创建的对象是猫狗这一类动物家族,如果还有一类食物家族,这两个家族有一定的关联性,可以放在一个工厂中类。
简单工厂模式
创建一个专门类(工厂),来负责大量有共同接口的类实例化。面向对象三大特性(多态、抽象、封装)之一多态的使用。
//先申明动物接口 public interface 动物(){ public void 叫声(); } //猫实现动物接口 public class 猫 implements 动物(){ public void 叫声(){ System.out.println("喵喵"); } } //狗实现动物接口 public class 狗 implements 动物(){ public void 叫声(){ System.out.println("汪汪"); } } //工厂类负责实例化各种动物 public class Factory{ public static 动物 creator( int i){ if(i==1)return new 猫; else if(i==2)return new 狗; } } //客户端调用 public static void main(String[] args){ Factory factory = new Factory(); //使用猫这个子类来创建对象 factory.creator(1). 叫声(); factory.creator(2). 叫声(); }
上面的例子中,创建的对象是猫狗这一类动物家族,如果还有一类食物家族,这两个家族有一定的关联性,可以放在一个工厂中类。