工厂模式定义:实例化对象,用工厂代替new操作
定义一个产品接口:
java代码
public interface Product{ void type();//产品类型 }
定义两个产品实现该接口:
java代码
public class Apple implements Proudct{ public void type(){ System.out.println(”苹果又红又甜“); } } public class Peach implements Proudct{ public void type(){ System.out.println(”桃子又脆又甜“); } }
定义一个工厂接口
java代码
public interface ProductFactory{ Product factory();//生产工厂方法 }
定义两个工厂实现该工厂接口
public class AppleFactory implements ProductFactory{ public Product factory() { System.out.println(”生产苹果“); return new Apple(); } } public classPeachFactory implements ProductFactory{ public Product factory() { System.out.println(”生产桃子“); return new Peach(); } }
工厂客户端代码:
public class Test{ public static void main (string[] args){ ProductFactory apple=new AppleFactory(); apple.factory().type(); ProductFactory peach=new PeachFactory(); peach.factory().type(); } }