java设计模式(1)---总则

设计模式总则

一、概述

1、什么是设计模式

设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。

解释下:

分类编目:就是说可以找到一些特征去划分这些设计模式,从而进行分类。

代码设计经验:这句很重要,设计经验的总结,也就是说设计模式,是为了指导设计而从经验中总结出来的套路。

二、设计模式三大分类

先列出三大分类是:创建型模式、结构型模式、行为型模式三种模式。

1、理解三大分类

(1)稍微解释下

创建型模式:对象实例化的模式,创建型模式用于解耦对象的实例化过程。

结构型模式:把类或对象结合在一起形成一个更大的结构。

行为型模式:类和对象如何交互,及划分责任和算法。

这么一解释,就连我自己其实还没有真正明白他们到底是意思。网上大大部分对他们的解释就到这一层,还好被我找到一篇更加详细的介绍。

(2)更详细解释下

创建型模式

创建型模式对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离。为了使软件的结构更加清晰,外界对于这些对象只需要知道它们共同的接口,而不清楚其具体的实现细节,使整个系统

的设计更加符合单一职责原则。

结构型模式

结构型模式描述如何将类或者对象结合在一起形成更大的结构,就像搭积木,可以通过 简单积木的组合形成复杂的、功能更为强大的结构。

行为型模式

行为型模式是对在不同的对象之间划分责任和算法的抽象化。行为型模式不仅仅关注类和对象的结构,而且重点关注它们之间的相互作用。

通过行为型模式,可以更加清晰地划分类与对象的职责。在系统运行时,对象并不是孤立的,它们可以通过相互通信与协作完成某些复杂功能,一个对象在运行时也将影响到其他对象的运行。

这样一来总算是稍稍明白点了。

2、设计模式划分
相关推荐
麻瓜生活睁不开眼6 分钟前
Android16修改全局桌面视图边框四直角显示为弧边圆角
android·java·深度学习
dear_bi_MyOnly22 分钟前
【MyBatis 操作数据库】
java·数据库·学习·mybatis·学习方法
workflower41 分钟前
装备企业的 AI 路线图
人工智能·深度学习·机器学习·设计模式·机器人
Wang's Blog42 分钟前
Go-Zero 项目开发43:基于 Filebeat 收集各个服务的日志信息
开发语言·golang·go-zero·filebeat
2601_953720821 小时前
【计算机毕业设计】基于Spring Boot的心理健康咨询与评测系统的设计与实现
java·spring boot·后端
丈剑走天涯2 小时前
JDK 17 正式特性
java·开发语言
东方小月2 小时前
从零开发一个 Coding Agent(四):使用状态机校验大模型事件流
前端·人工智能·后端
秋田君2 小时前
QT_QFontDialog类字体对话框
开发语言·qt
圣光SG2 小时前
Java操作题练习(七)
java·开发语言·算法
都叫我大帅哥2 小时前
“让AI修就行”?我劝你收回这句话——来自一位Java博主的硬核反常识
后端