• 简介
  • 原则
  • 分类
    • 创建型模式
    • 结构型模式
    • 行为型模式
  • 类图
  • 参考

简介

  • 设计模式是在特定环境下,为解决某一类通用软件设计问题提供的一套定制的解决方案,描述了对象和类之间的相互作用。
  • 优点:
    1. 提供标准以供开发。方便交流,降低对复杂系统理解的难度。
    2. 更加简单方便的复用成功的设计。避免不可重用的方案。
    3. 使设计方案更加灵活易于修改。设计模式通常满足多种面向对象的设计原则。
    4. 提高开发效率和软件质量
    5. 有助于更加深入的理解面向对象思想,提高编码水平。
  • 参考设计模式相关书籍和博客学习设计模式,使用Enterprise Architect 12绘制UML图,并结合jdk源代码这一实际应用加深理解。

原则

  • 面向对象的设计原则

分类

创建型模式

创建型模式将对象的创建和使用分离,对用户隐藏对象的创建细节,从而降低耦合度。

  • 简单工厂模式
  • 工厂方法模式
  • 抽象工厂模式
  • 建造者模式
  • 原型模式
  • 单例模式

结构型模式

结构型模式将现有的类或者对象组织起来,形成更强大的结构。

  • 适配器模式
  • 桥接模式
  • 组合模式
  • 装饰模式
  • 外观模式
  • 享元模式
  • 代理模式

行为型模式

行为型模式研究运行时对象的通信和协作,进一步明确对象的职责。

  • 职责链模式
  • 命令模式
  • 解释器模式
  • 迭代器模式
  • 中介者模式
  • 备忘录模式
  • 观察者模式
  • 状态模式
  • 策略模式
  • 模板方法模式
  • 访问者模式

类图

  • Enterprise Architect 12 绘制的24种设计模式类图源文件:https://download.csdn.net/download/qq_40369829/10424648

参考

  1. java设计模式 刘伟
  2. 设计模式导学
  3. jdk中的设计模式
  4. JDK源码中使用的设计模式

24种java设计模式总结和目录相关推荐

  1. 【java设计模式】-00目录

    开篇 [java设计模式]-01设计模式简介 创建型模式: [java设计模式]-02工厂模式(Factory Pattern) [java设计模式]-03抽象工厂模式(Abstract Factor ...

  2. 7种 Java 设计模式,你会几种?

    为什么要学习设计模式 设计模式并不是什么新的知识,它只是一种经验的总结,所以必然是先有人这么去做了,然后才有人去总结提炼,从而变成了设计模式. 那么既然设计模式是前人总结的经验,我们何不站在巨人的肩膀 ...

  3. 23种java设计模式详解-代理模式

    什么是代理模式: Proxy模式又叫做代理模式,是构造型的设计模式之一,它可以为其他对象提供一种代理(Proxy)以控制对这个对象的访问.所谓代理,是指具有与代理元(被代理的对象)具有相同的接口的类, ...

  4. java 中 statent,【行为型模式】状态模式(state)之23种java设计模式

    State接口类 public interface State { void handle(); } BookedState类 /** * 已预订状态 * @author Administrator ...

  5. 23种java设计模式之模板模式

    说实话,我们学的框架其实就是模板,是不是这样引出话题就能很快理解模板模式呢,好了,下面我们用一个经典的泡咖啡,泡茶案例来说明模板模式. 泡咖啡步骤:水烧开--->冲泡咖啡粉--->把咖啡倒 ...

  6. Java设计模式博客全目录

    转载请注明出处:http://blog.csdn.net/lhy_ycu/article/details/40031567 今天来对这23种设计模式做个总结.咱使用设计模式的目的是为了可重用代码.让代 ...

  7. Java设计模式【之】 七大设计原则(有道有术,代码示例)

    Java设计模式[之] 有道有术(设计原则,代码示例) 名词解析 1.单一职责 2.接口隔离 3.依赖倒置(面向接口编程) 4.里氏替换 5.开闭原则(ocp) 6.迪米特(好朋友原则) 7.合成复用 ...

  8. Java设计模式【之】工厂方法模式【场景:制作咖啡】

    Java设计模式[之]工厂方法模式[场景:制作咖啡] 1.工厂方法 1.1.工厂方法模式 1.2.具体需求(生产多种咖啡) 2.代码实现 2.1.代码结构 2.2.咖啡抽象类 2.3.一种咖啡 2.4 ...

  9. Java设计模式——迭代器模式

    概述 网上大部分人说迭代模式的时候,总是以某一种可遍历的对象为例进行介绍.这是可行的,这也是迭代模式的基本原型.当我看到<Head Frist设计模式>中迭代模式的时候,感觉要是能从另一个 ...

最新文章

  1. Android Studio Day03-2(常用操作)
  2. xcode 4.2 不再支持 Window-Based Application 的解决办法(转载)
  3. 在线作图丨如何绘制精美的3D饼图
  4. Jsoup实现Iteye自动登录
  5. php输出二维数组中指定内容,HP将MYSQL内容读到二维数组并按指定列输出
  6. 支持向量回归代码_RDKit:基于支持向量回归(SVR)预测logP
  7. 计算机生成兵力方法,计算机生成兵力平台体系结构技术研究
  8. html js 处理元素的数据属性(data)
  9. NBSI1.15部分源代码
  10. PCB LAYOUT特殊走线总结
  11. linux dsp开发环境,在ubuntu上搭建uclinux开发环境(转载)--- 第二篇
  12. 编程入门:零基础想要学好C/C++编程?那你一定要看看这五个步骤!
  13. 【Midjourney教程】设计麻瓜也能10分钟上架一套表情包
  14. TypeError: argument of type ‘NoneType‘ is not iterable
  15. 芝麻任务,快速获得小程序用户
  16. 【通知】关于SRRC认证无线电发射设备型号核准的通知
  17. OSError: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
  18. 恶意软件XcodeGhost S:变种带来的又一波影响
  19. BLAST(基本局部比对工具)
  20. python爬虫爬取新浪网站新闻内容

热门文章

  1. 价位10000元的计算机配置电脑,10000元左右的计算机配置怎么配?
  2. Printers(一) 打印机配置信息
  3. 第一帖:发现一个很洋气的机器人,一个图灵机器人的小小应用
  4. android 短信防火墙,android 实例短信防火墙
  5. dota缴械技能增强
  6. 关于python没法pip install ocr,清华镜像也找不到ocr库
  7. snpEff 注释拟南芥的VCF文件
  8. java小米面经,小米三面面经
  9. 2021年集创赛“芯来RISC-V杯”等你来战!
  10. 魔兽后裔用计算机算伤害,谁是国服第一计算器:骚男VS魔兽后裔