24种java设计模式总结和目录
https://blog.csdn.net/qq_40369829/article/details/80374131
简介
原则
分类
创建型模式
结构型模式
行为型模式
类图
参考
简介
设计模式是在特定环境下,为解决某一类通用软件设计问题提供的一套定制的解决方案,描述了对象和类之间的相互作用。
优点:
提供标准以供开发。方便交流,降低对复杂系统理解的难度。
更加简单方便的复用成功的设计。避免不可重用的方案。
使设计方案更加灵活,易于修改。设计模式通常满足多种面向对象的设计原则。
提高开发效率和软件质量。
有助于更加深入的理解面向对象思想,提高编码水平。
参考设计模式相关书籍和博客学习设计模式,使用Enterprise Architect 12绘制UML图,并结合jdk源代码这一实际应用加深理解。
原则
面向对象的设计原则
分类
创建型模式
创建型模式将对象的创建和使用分离,对用户隐藏对象的创建细节,从而降低耦合度。
简单工厂模式
工厂方法模式
抽象工厂模式
建造者模式
原型模式
单例模式
结构型模式
结构型模式将现有的类或者对象组织起来,形成更强大的结构。
适配器模式
桥接模式
组合模式
装饰模式
外观模式
享元模式
代理模式
行为型模式
行为型模式研究运行时对象的通信和协作,进一步明确对象的职责。
职责链模式
命令模式
解释器模式
迭代器模式
中介者模式
备忘录模式
观察者模式
状态模式
策略模式
模板方法模式
访问者模式
类图
Enterprise Architect 12 绘制的24种设计模式类图源文件:https://download.csdn.net/download/qq_40369829/10424648
参考
java设计模式 刘伟
设计模式导学
jdk中的设计模式
JDK源码中使用的设计模式
24种java设计模式总结和目录的更多相关文章
- 【java设计模式】-00目录
开篇 [java设计模式]-01设计模式简介 创建型模式: [java设计模式]-02工厂模式(Factory Pattern) [java设计模式]-03抽象工厂模式(Abstract Factor ...
- 23种java设计模式之装饰者模式及动态代理
设计模式不管对于何种语言都是存在的,这里介绍的是java的模式 装饰者模式是在二次开发中应用比较多的一款模式,当然了用反射也是可以实现的,今天介绍的是装饰模式,有兴趣的朋友可以自己去了解一下反射是怎么 ...
- Java设计模式之适配器模式(项目升级案例)
今天是我学习Java设计模式中的第三个设计模式了,但是天气又开始变得狂热起来,对于我这个凉爽惯了的青藏人来说,又是非常闹心的一件事儿,好了不管怎么样,目标还是目标(争取把23种Java设计模式接触一遍 ...
- Java设计模式之适配器设计模式(项目升级案例)
今天是我学习到Java设计模式中的第三个设计模式了,但是天气又开始变得狂热起来,对于我这个凉爽惯了的青藏人来说,又是非常闹心的一件事儿,好了不管怎么样,目标还是目标(争取把23种Java设计模式接触一 ...
- [设计模式](转)Java中的24种设计模式与7大原则
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- Java设计模式:23种设计模式全面解析(超级详细)
设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路.它不是语法规定,而是一套用来提高代码可复用性.可维护性.可读性.稳健性以及安全性的解决方案. 1995 ...
- JAVA设计模式总结之23种设计模式
上一篇总结了设计模式的六大原则<JAVA设计模式总结之六大设计原则>,这一篇,正式进入到介绍23种设计模式的归纳总结. 一.什么是设计模式 ...
- java设计模式之单例模式以及实现的几种方法
java设计模式以及实现的几种方法,看到比较好的博客文章,收藏起来供以后再次阅读.. 参见:http://www.cnblogs.com/garryfu/p/7976546.html
- Java设计模式之单例模式(七种写法)
Java设计模式之单例模式(七种写法) 第一种,懒汉式,lazy初始化,线程不安全,多线程中无法工作: public class Singleton { private static Singleto ...
随机推荐
- 19_04_02校内训练[deadline]
题意 给出一个二分图,左边为A集合,右边为B集合,要求把A集合中每一个点染为黑白两色中的一种,B集合中的颜色已定.染色后对于原本相邻且颜色相同的点,建立新的二分图,即得到了两个新的二分图,它们是独立的 ...
- STL next_permutation 算法原理和实现
转载自:https://www.cnblogs.com/luruiyuan/p/5914909.html 目标 STL中的next_permutation 函数和 prev_permutation 两 ...
- binary and out mode to open a file
When I use binary and out mode to open a exist file, and to modify the 4th and 8th byte data to 0x78 ...
- 剑指Offer 52. 正则表达式匹配 (字符串)
题目描述 请实现一个函数用来匹配包括'.'和'*'的正则表达式.模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次). 在本题中,匹配是指字符串的所有字符匹配整个模式 ...
- L2-013. 红色警报(并查集)*
L2-013. 红色警报 参考博客 #include <cstdio> #include <algorithm> #include <iostream> #incl ...
- java基础(7)集合与泛型
第一部分:Collection集合 1 collection集合概述 集合按照其存储结构可以分为两大类,分别是单列集合java.util.Collection和双列集合java.util.Map. C ...
- CPU查询
请问:两路四核超线程=多少CPU??? 答案:16个 一.解释说明 两路=物理主机中,CPU的卡槽,槽位,这个无法增加,一个萝卜一个坑.就更内存卡槽一样,两个内存卡卡槽,a+b=总内存. 路=槽位=插 ...
- pytorch中,不同的kernel对不同的feature map进行卷积之后输出某一个channel对应的多个feature map如何得到一个channel的feature map
实际上在卷积操作的时候,比如说,我某一层输出的feature map的size为4713*13 channel的数目为7,设经过某卷积层之后,网络输出的feature map的channel的数目为1 ...
- C++程序设计-面向对象
1-1面向对象初探 变量也是Object Data: the properties or status; is the core Operations: the functions对外能提供的服务, ...
- (拼接SQL语句)mysql中date类型,datetime类型
: , . _ - / % & # @ ! * | [ ] { } ; + = update ky set date = '18,9-2' where id = 1 // 2 ...