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,             访问者模式

开闭原则: 一个软件实体应该对扩展开放 对修改闭合。

里氏代换原则:  任何能使用父类的地方一定能使用子类。

依赖倒转原则: 要依赖于抽象 不要依赖于实现。或者是抽象不应该依赖与细节,细节应该依赖于抽象。

合成聚合复用原则: 尽量使用合成聚合而不是继承去实现复用。

迪米特法则: 一个软件实体应该尽可能少的与其它实体发生相互作用。

接口隔离原则: 应当为客户提供尽可能小的单独的接口 而不应该提供大的综合性的接口。

转自:http://www.cnblogs.com/forlina/archive/2011/06/23/2088224.html

Java设计模式分为创建模式, 结构模式, 行为模式 3种类型相关推荐

  1. java设计模式 (二) 创建模式

    java设计模式 (二) 创建型模式 单例模式 Singleton pattern 现实场景 双11, 小华收快递, 早上圆通快递叫他下楼收快递, 刚上来, 顺丰快递叫他下楼收快递,.然后没多久EMS ...

  2. Java设计模式之创建型:原型模式

    一.什么是原型模式: 原型模式主要用于对象的创建,使用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象.UML类图如下: 原型模式的核心是就是原型类 Prototype,Prototype ...

  3. Java设计模式之创建型:建造者模式

    一.什么是建造者模式: 建造者模式将复杂产品的创建步骤分解在在不同的方法中,使得创建过程更加清晰,从而更精确控制复杂对象的产生过程:通过隔离复杂对象的构建与使用,也就是将产品的创建与产品本身分离开来, ...

  4. Java设计模式之行为型:责任链模式

    背景: 学校规定参加校招的同学必须要请假,且要有相关人员的签字,三天以下需辅导员签字.三到七天需要系主任签字,一个星期以上需要院长签字,更多的则需要校长签字! 上图将学生.辅导员.系主任.院长.校长组 ...

  5. Java设计模式之结构型:装饰器模式

    一.什么是装饰器模式: 当需要对类的功能进行拓展时,一般可以使用继承,但如果需要拓展的功能种类很繁多,那势必会生成很多子类,增加系统的复杂性,并且使用继承实现功能拓展时,我们必须能够预见这些拓展功能, ...

  6. Java设计模式之行为型:中介者模式

     前言: 在我们的生活中处处充斥着"中介者",比如你租房.买房.找工作.旅游等等可能都需要那些中介者的帮助,地球上国与国之间的关系异常复杂,会因为各种各样的利益关系来结成盟友或者敌 ...

  7. 【每天一个java设计模式(二十三)】 - 访问者模式

    在访问者模式中,我们使用了一个访问者类,它改变了元素类的执行算法.通过这种方式,元素的执行算法可以随着访问者改变而改变.这种类型的设计模式属于行为型模式.根据模式,元素对象已接受访问者对象,这样访问者 ...

  8. Java设计模式之结构型:享元模式

    一.什么是享元模式: 享元模式通过共享技术有效地支持细粒度.状态变化小的对象复用,当系统中存在有多个相同的对象,那么只共享一份,不必每个都去实例化一个对象,极大地减少系统中对象的数量.比如说一个文本系 ...

  9. 【每天一个java设计模式(十五)】 - 命令模式

    命令模式是一种数据驱动的设计模式,它属于行为型模式.请求以命令的形式包裹在对象中,并传给调用对象.调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令. 命令模式也就是一个 ...

最新文章

  1. 看完发现RNN原来是这样,机器学习人门贴送上
  2. (翻译) MongoDB(13) 在 Ubuntu 上安装MongoDB社区版
  3. BZOJ1086 [SCOI2005]王室联邦 【dfs + 贪心】
  4. 小程序不支持wx.request同步请求解决方法
  5. 实验八网络程序设计(网络编程)_JAVA
  6. pytorch 入门Tensor(一)
  7. 教你怎么在vi和vim上查找字符串
  8. 【LeetCode】104. Maximum Depth of Binary Tree (2 solutions)
  9. centos 7 局域网丢包排查_宽带发生故障怎么办?教你几招轻松排查
  10. Comet OJ - Contest #0
  11. Java 序列化反序列化框架比较
  12. 中油即时通信电脑版_市场营销之即时通讯营销
  13. bootstrapValidator对于隐藏域验证和程序赋值即时验证的问题
  14. python函数装饰嵌套_python3--函数名本质,函数嵌套,闭包,装饰器
  15. C - Watchmen
  16. win10wifi间歇性断网重启后恢复_实用!Xbox Series X 在重启后也能快速恢复之前的游戏状态...
  17. webservice框架 java_JAVA开发Web Service几种框架介绍
  18. .net core 下文件压缩打包下载
  19. django上云步骤
  20. 线程池中各个参数如何合理设置

热门文章

  1. SQL Server 2012笔记分享-29:日志文件的工作方式
  2. 以感恩的心离职,站好最后一班岗
  3. tomcat手动发布
  4. OSPF DR选举的先后
  5. 【发现】iframe 放入 Updatepanel 中没有作用,整页总要闪烁一次的解决办法
  6. 【ORACLE 高可用】 作业 :配置ORACLE GoldenGate 1
  7. 设计模式---命令模式
  8. ORA-12519, TNS:no appropriate service handler found
  9. WebView http图片加载失败
  10. Pytorch自定义Dataset和DataLoader去除不存在和空的数据