AbstractFactoryPattern(23种设计模式之一)
设计模式六大原则(1):单一职责原则 设计模式六大原则(2):里氏替换原则 设计模式六大原则(3):依赖倒置原则 设计模式六大原则(4):接口隔离原则 设计模式六大原则(5):迪米特法则 设计模式六大原则(6):开闭原则
AbstractFactoryPattern,UML抽象图百度找,代码实现如下
使用抽象工厂模式设计一个可以创建1型产品和2型产品。
抽象产品类
package AbstractFactoryPattern;
public interface IProduct1 {public void show();
}
package AbstractFactoryPattern;
public interface IProduct2 {public void show();
}
具体产品类
package AbstractFactoryPattern.ConcreteProduct;
import AbstractFactoryPattern.IProduct1;
public class Product1 implements IProduct1 {public void show() {System.out.println("这是1型产品");}
}
package AbstractFactoryPattern.ConcreteProduct;
import AbstractFactoryPattern.IProduct2;
public class Product2 implements IProduct2 {public void show() {System.out.println("这是2型产品");}}
抽象工厂类
package AbstractFactoryPattern;
public interface IFactory {public IProduct1 createProduct1(); public IProduct2 createProduct2();
}
具体工厂类
package AbstractFactoryPattern.ConcreteFactory;
import AbstractFactoryPattern.IFactory;
import AbstractFactoryPattern.IProduct1;
import AbstractFactoryPattern.IProduct2;
import AbstractFactoryPattern.ConcreteProduct.Product1;
import AbstractFactoryPattern.ConcreteProduct.Product2;public class Factory implements IFactory {public IProduct1 createProduct1() { return new Product1(); }public IProduct2 createProduct2() { return new Product2(); }
}
测试类
package AbstractFactoryPattern;
import AbstractFactoryPattern.ConcreteFactory.Factory;
public class Test {public static void main(String[] args) {IFactory factory = new Factory(); factory.createProduct1().show(); factory.createProduct2().show(); }
}
别嫌弃我没写注释,这个代码很简单,注释省略,嘿嘿。
转载于:https://www.cnblogs.com/1996jiwei/p/6481361.html
AbstractFactoryPattern(23种设计模式之一)相关推荐
- Java开发中的23种设计模式详解(转)
设计模式(Design Patterns) --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- 23 种设计模式实战 pdf(很全)
今天分享一份学习资料:23 种设计模式实战教程.pdf,助你快速上手设计模式,写出各种高端代码,文末附下载地址. 设计模式一般分为三大类: 实战教程: 教程共 96 页PDF,太全了!纯粉丝福利,非广 ...
- 从追MM谈23种设计模式
从追MM谈Java的23种设计模式 1.FACTORY-追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说&quo ...
- 【设计模式】Java 23种设计模式对比总结
一.设计模式的分类 创建型模式,共五种(1-5):工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种(6-12):适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组 ...
- java 的23种设计模式 单例模式
23种设计模式友情链接: 点击打开链接 单例模式: A.饿汉式单例模式 具体步骤: 1.声明一个私有的静态的最终的本类类型的对象并实例化 private static final Person ins ...
- 23种设计模式C++实现UML+源码汇总
设计模式-汇总 代码开源仓库地址 23种设计模式C++实现 C++中的开闭原则使用C++多态功能实现附源码 C++基于多态实现依赖颠倒原则附源码 C++ 的静态成员变量为什么一定要在类外定义 23种设 ...
- 23种设计模式C++源码与UML实现--外观模式
外观模式 facade模式也叫外观模式,是由GoF提出的23种设计模式中的一种,facade模式为一组具有类似功能的类群,比如类库,子系统等等,提供一个一致的简单界面.这个一致的简单的界面被称为fac ...
- 23种设计模式C++源码与UML实现--建造者模式
建造者模式 代码仓库地址:建造者模式 Builder模式也叫建造者模式或者生成器模式,是由GoF提出的23种设计模式中的一种.Builder模式是一种对象创建模式之一,用来隐藏复合对象的创建过程.他把 ...
- 【java】java开发中的23种设计模式详解
设计模式(Design Patterns) --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- java 23种设计模式及具体例子 收藏有时间慢慢看
设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代 码可靠性. 毫无疑问,设计模式 ...
最新文章
- 黑马程序员-张老师基础加强3-内省
- iOS:CALayer核心动画层
- 一文看懂全球半导体格局
- Bootstrap3 表格-带边框的表格
- 在ASP.NET中UrlRewrite的实现(能隐藏扩展名)之一
- C语言指针与强制类型转换
- 利用向量叉积求三角形的面积(+STL:nth_element求第K大的数)
- MATLAB正太分布函数
- 青岛农商银行计算机防病毒应用培训,青岛农商银行胶州支行多元化培训提升安防管理水平...
- Linux系统的启动过程(转)
- 【Java从0到架构师】Spring - 纯注解开发
- Win10开机跳过欢迎界面直接进系统桌面的设置方法
- 深度学习自学(二十):SmoothL1 和 Softmax交叉熵
- 图库网站Unsplash高清原图爬虫
- 服务器安装julia_科学网—Julia 在windows下安装说明(国内) - 王虹宇的博文
- 简单的言语介绍一下什么是程序员
- 【Ubuntu 20.04 LTS】设置笔记本合并盖子不休眠
- 花卉拍摄技巧 8 — 荷莲
- video.js视频播放器进度条标记的功能实现
- 采油区域java_[APIO2009]采油区域
热门文章
- 优酷播控实践:基于规则引擎的投放管控模型
- 阿里云边缘计算与云边端协同网络的融合与挑战
- 四级单词pdf_2016年12月大学英语四级真题及答案解析(完整三套可打印)
- nginx可以负载均衡多个tomcat,nginx主机挂了怎么办?Keepalived
- 新版“峡谷第一美”妲己尾巴毛发制作分享
- 游戏人工智能开发之6种决策方法
- Oracle 11g新特性:Result Cache
- 在 Linux 上安装 Oracle 数据库 11g
- TCP/IP协议(二)tcp/ip基础知识
- 【21.37%】【codeforces 579D】Or Game