Java设计模式分为创建模式, 结构模式, 行为模式 3种类型
Java设计模式之创建模式包括:
Factory, 工厂模式
Singleton, 单例模式
Builder, 建造模式
Prototype, 原型模式
Java设计模式之结构模式包括:
Facade, 门面模式
Decorator, 装饰模式
Composite, 合成模式
Proxy, 代理模式
Adapter, 适配器模式
Bridge, 桥梁模式
Flyweight, 共享元类模式
Java设计模式之行为模式包括:
Chain of responsibleif, 责任链模式
Command, 命令模式
Strategy, 策略模式
Observer, 观察模式
Interpreter , 解释器模式
Iterator, 迭代模式
Mediator, 中介模式
Memento, 备忘录模式
State, 状态模式
Template, 模板模式
Visitor, 访问者模式
开闭原则: 一个软件实体应该对扩展开放 对修改闭合。
里氏代换原则: 任何能使用父类的地方一定能使用子类。
依赖倒转原则: 要依赖于抽象 不要依赖于实现。或者是抽象不应该依赖与细节,细节应该依赖于抽象。
合成聚合复用原则: 尽量使用合成聚合而不是继承去实现复用。
迪米特法则: 一个软件实体应该尽可能少的与其它实体发生相互作用。
接口隔离原则: 应当为客户提供尽可能小的单独的接口 而不应该提供大的综合性的接口。
Java设计模式分为创建模式, 结构模式, 行为模式 3种类型相关推荐
- java设计模式 (二) 创建模式
java设计模式 (二) 创建型模式 单例模式 Singleton pattern 现实场景 双11, 小华收快递, 早上圆通快递叫他下楼收快递, 刚上来, 顺丰快递叫他下楼收快递,.然后没多久EMS ...
- Java设计模式之创建型:原型模式
一.什么是原型模式: 原型模式主要用于对象的创建,使用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象.UML类图如下: 原型模式的核心是就是原型类 Prototype,Prototype ...
- Java设计模式之创建型:建造者模式
一.什么是建造者模式: 建造者模式将复杂产品的创建步骤分解在在不同的方法中,使得创建过程更加清晰,从而更精确控制复杂对象的产生过程:通过隔离复杂对象的构建与使用,也就是将产品的创建与产品本身分离开来, ...
- Java设计模式之行为型:责任链模式
背景: 学校规定参加校招的同学必须要请假,且要有相关人员的签字,三天以下需辅导员签字.三到七天需要系主任签字,一个星期以上需要院长签字,更多的则需要校长签字! 上图将学生.辅导员.系主任.院长.校长组 ...
- Java设计模式之结构型:装饰器模式
一.什么是装饰器模式: 当需要对类的功能进行拓展时,一般可以使用继承,但如果需要拓展的功能种类很繁多,那势必会生成很多子类,增加系统的复杂性,并且使用继承实现功能拓展时,我们必须能够预见这些拓展功能, ...
- Java设计模式之行为型:中介者模式
前言: 在我们的生活中处处充斥着"中介者",比如你租房.买房.找工作.旅游等等可能都需要那些中介者的帮助,地球上国与国之间的关系异常复杂,会因为各种各样的利益关系来结成盟友或者敌 ...
- 【每天一个java设计模式(二十三)】 - 访问者模式
在访问者模式中,我们使用了一个访问者类,它改变了元素类的执行算法.通过这种方式,元素的执行算法可以随着访问者改变而改变.这种类型的设计模式属于行为型模式.根据模式,元素对象已接受访问者对象,这样访问者 ...
- Java设计模式之结构型:享元模式
一.什么是享元模式: 享元模式通过共享技术有效地支持细粒度.状态变化小的对象复用,当系统中存在有多个相同的对象,那么只共享一份,不必每个都去实例化一个对象,极大地减少系统中对象的数量.比如说一个文本系 ...
- 【每天一个java设计模式(十五)】 - 命令模式
命令模式是一种数据驱动的设计模式,它属于行为型模式.请求以命令的形式包裹在对象中,并传给调用对象.调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令. 命令模式也就是一个 ...
最新文章
- 看完发现RNN原来是这样,机器学习人门贴送上
- (翻译) MongoDB(13) 在 Ubuntu 上安装MongoDB社区版
- BZOJ1086 [SCOI2005]王室联邦 【dfs + 贪心】
- 小程序不支持wx.request同步请求解决方法
- 实验八网络程序设计(网络编程)_JAVA
- pytorch 入门Tensor(一)
- 教你怎么在vi和vim上查找字符串
- 【LeetCode】104. Maximum Depth of Binary Tree (2 solutions)
- centos 7 局域网丢包排查_宽带发生故障怎么办?教你几招轻松排查
- Comet OJ - Contest #0
- Java 序列化反序列化框架比较
- 中油即时通信电脑版_市场营销之即时通讯营销
- bootstrapValidator对于隐藏域验证和程序赋值即时验证的问题
- python函数装饰嵌套_python3--函数名本质,函数嵌套,闭包,装饰器
- C - Watchmen
- win10wifi间歇性断网重启后恢复_实用!Xbox Series X 在重启后也能快速恢复之前的游戏状态...
- webservice框架 java_JAVA开发Web Service几种框架介绍
- .net core 下文件压缩打包下载
- django上云步骤
- 线程池中各个参数如何合理设置