Abstract Factory Pattern
抽象工厂模式
抽象工厂,怎么理解呢?
简单点就是指一个工厂的出口不再是之前的一个了,变成多个了,举个例子来说。
工厂接口下有俩个子工厂,一个生产热带产品,一个生产亚热带产品,他们分别生产两种物品,水果和蔬菜!热带工厂和亚热带工厂均提供了俩个产品的出口,所以他们都是抽象工厂。
package com.pattern.abstractfactory; /** * 工厂提供两个出口,一个是生产水果,一个是生产蔬菜 */ public interface Factory { public Fruit createFruit(String name); public Veggie createVeggie(String name); }
package com.pattern.abstractfactory; /** * 水果接口 */ public interface Fruit { public void sayName(); }
package com.pattern.abstractfactory; /** * 蔬菜接口 */ public interface Veggie { public void sayName(); }
package com.pattern.abstractfactory; /** * 生产热带产品的工厂 */ public class TropicalFactory implements Factory{ @Override public Fruit createFruit(String name) { if(name!=null&&name.equalsIgnoreCase("shuiguo")){ System.out.println("热带水果"); } return null; } @Override public Veggie createVeggie(String name) { if(name!=null&&name.equalsIgnoreCase("shucai")){ System.out.println("热带蔬菜"); } return null; } }
package com.pattern.abstractfactory; /** * 生产亚热带产品的工厂 */ public class SubTropicalFactory implements Factory{ @Override public Fruit createFruit(String name) { if(name!=null&&name.equalsIgnoreCase("shuiguo")){ System.out.println("亚热带水果"); } return null; } @Override public Veggie createVeggie(String name) { if(name!=null&&name.equalsIgnoreCase("shucai")){ System.out.println("亚热带蔬菜"); } return null; } }
package com.pattern.abstractfactory; public class Test { @SuppressWarnings("unused") public static void main(String[] args) { Fruit f=new TropicalFactory().createFruit("shuiguo"); Veggie v=new TropicalFactory().createVeggie("shucai"); } }
相关推荐
3、抽象工厂模式(Abstract Factory Pattern) 用意:一个工厂生产一系列产品
抽象工厂模式(Abstract Factory Pattern) 引入: 在前面介绍的两个创建型模式里面,我们解决的都是有关"new"的问题,用它们来避免显式指定类创建对象。我写的也非常简单易懂,相信看过的朋友们都应该对简单工厂...
抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,属于对象创建型模式。
NULL 博文链接:https://lym6520.iteye.com/blog/701742
NULL 博文链接:https://jacky-dai.iteye.com/blog/2294531
6、抽象工厂模式ABSTRACT FACTORY PATTERN 7、门面模式FACADE PATTERN 8、适配器模式ADAPTER PATTERN 9、模板方法模式TEMPLATE METHOD PATTERN 10、建造者模式BUILDER PATTERN 11、桥梁模式BRIDGE PATTERN 12、...
抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在抽象工厂模式中,接口是负责...
抽象工厂模式(Abstract Factory Pattern) 单例模式(Singleton Pattern) 建造者模式(Builder Pattern) 原型模式(Prototype Pattern) 2. 结构型模式 适配器模式(Adapter Pattern) 桥接模式(Bridge ...
抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的类 下面是一个抽象工厂的demo: #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'Andy' 大话...
抽象工厂(Abstract Factory) 3. 建造者模式(Builder) 4. 工厂方法模式(Factory Method) 5. 原型模式(Prototype)结构型: 6. 适配器模式(Adapter Pattern) 7. 桥接模式(Bridge Pattern) 8. 装饰模式(Decorator ...
Java抽象工厂模式:解锁代码复用的新境界 在编程世界中,设计模式是一组被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。它们能够帮助我们更好地组织代码,提高代码的可重用性、可维护性和可扩展性...
抽象工厂模式(Abstract Factory Pattern) 单例模式(Singleton Pattern) 建造者模式(Builder Pattern) 原型模式(Prototype Pattern) 2 结构型模式 这些设计模式关注类和对象的组合。继承的概念被用来组合接口...
备忘录模式(Memento Pattern) 策略模式(Strategy Pattern) 抽象工厂模式(Abstract Factory Pattern) 代理模式(Proxy Pattern) 单例模式(Singleton Pattern) 迭代器模式(Iterator Pattern) 访问者模式(Visitor ...
Factory Method Pattern 工厂三兄弟之工厂方法模式(一) 工厂三兄弟之工厂方法模式(二) 工厂三兄弟之工厂方法模式(三) 工厂三兄弟之工厂方法模式(四) 抽象工厂模式-Abstract Factory Pattern 工厂三兄弟之...
# 抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。# 该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。# 在抽象工厂模式中,接口是...
Abstract factory pattern 抽象工厂模式,好源码
此示例改编自漂亮的教程。
5. 抽象工厂模式 (Abstract Factory) 6. 策略模式 (Strategy Pattern) 7. 适配器模式 (Adapter Pattern) 8. 模板方法模式 (Template Pattern) 9. 建造者模式 (Builder Pattern) 10. 原型模式 (Prototype ...
抽象工厂模式(Abstract Factory Pattern) 建造者模式(Builder Pattern) 原型模式(Prototype Pattern) 单例模式(Singleton Pattern) 结构型模式用来处理类或者对象的组合,主要包含以下7种设计...
抽象工厂模式【ABSTRACT FACTORY PATTERN】 门面模式【FACADE PATTERN】 适配器模式【ADAPTER PATTERN】 模板方法模式【TEMPLATE METHOD PATTERN】 建造者模式【BUILDER PATTERN】 桥梁模式...