设计模式:抽象工厂模式(Abstract Factory Pattern) /** * 抽象工厂模式。br/ * 抽象工厂模式提供一个接口用于创建相关或依赖对象的家族而不需要明确指定具体类。 * author Bright Lee */ public class AbstractFactoryPattern { public static void main(String[] args) { AbstractFactory factory001 new ConcreteFactory001(); Client client001 new Client(factory001); client001.doSomething(); AbstractFactory factory002 new ConcreteFactory002(); Client client002 new Client(factory002); client002.doSomething(); } } class Client { private AbstractFactory factory; /** * 客户只需要知道传入的是一个抽象工厂而不需要知道工厂的具体类型。 */ public Client(AbstractFactory factory) { this.factory factory; } public void doSomething() { Product product factory.createProduct(); System.out.println(获得的产品是 product); } } interface AbstractFactory { /** * 抽象工厂的所有代码均由子类实现。 */ public Product createProduct(); } class ConcreteFactory001 implements AbstractFactory { public Product createProduct() { return new Product001(); } } class ConcreteFactory002 implements AbstractFactory { public Product createProduct() { return new Product002(); } } interface Product { } class Product001 implements Product { public String toString() { return Product001; } } class Product002 implements Product { public String toString() { return Product002; } }运行结果获得的产品是Product001获得的产品是Product002青蛙客服系统https://download.csdn.net/download/look4liming/93326820