首页 > 代码库 > 设计模式(二)---工厂方法模式
设计模式(二)---工厂方法模式
设计模式(二)---工厂方法模式
工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。
抽象工厂源代码
public interface Creator { /** * 工厂方法 */ public Product factory(); }
抽象产品源代码
public interface Product { }
具体工厂1源代码
public class ConcreteCreator1 implements Creator { /** * 工厂方法 */ public Product factory() { return new ConcreteProduct1(); } }
具体工厂2源代码
public class ConcreteCreator2 implements Creator { /** * 工厂方法 */ public Product factory() { return new ConcreteProduct2(); } }
具体产品1源代码
public class ConcreteProduct1 implements Product { public ConcreteProduct1() { //do something } }
具体产品2源代码
public class ConcreteProduct2 implements Product { public ConcreteProduct2() { //do something } }
客户源代码
public class Client { private static Creator creator1,creator2; private static Product product1,product2; public static void main(String[] args) { creator1=new ConcreteCreator1(); product1=creator1.factory(); creator2=new ConcreteCreator1(); product2=creator2.factory(); } }
设计模式(二)---工厂方法模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。