参考网站
http://www.runoob.com/design-pattern/factory-pattern.html
什么是工厂模式?
工厂模式是Java中最常用的设计模式之一。这种模式属于创建型模式,它提供了一种创建对象的最佳方法。
在工厂模式中,我么你在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。
使用方法
定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。
步骤
创建一个接口
Toys.java 玩具类
public interface Toys {
public void print();
}
创建实现接口的实现类
Car.java 玩具车
public class Car implements Toys{
public void print(){
System.out.println("Car");
}
}
Sword.java 玩具剑
public class Sword implements Toys {
public void print(){
System.out.println("Sword");
}
}
创建一个工厂,生成基于给定字符串的实体类的对象
ToysFactory.java 玩具工厂类
public class ToysFactory {
public Toys getToy(String toysName){
if(toysName == "car")
return new Car();
else if(toysName == "sword")
return new Sword();
return null;
}
}
使用该工厂,给定字符串,生成对应的对象
Client.java 客户端类
public class Client {
public static void main(String[] args) {
// TODO Auto-generated method stub
ToysFactory toysFactory = new ToysFactory();
Toys toys = toysFactory.getToy("sword");
toys.print();//输出Sword
toys = toysFactory.getToy("car");
toys.print();//输出Car
}
}