小谈设计模式(30)—Java设计模式总结

简介: 小谈设计模式(30)—Java设计模式总结

专栏介绍

专栏地址

http://t.csdnimg.cn/VpriY

专栏介绍

主要对目前市面上常见的23种设计模式进行逐一分析和总结,希望有兴趣的小伙伴们可以看一下,会持续更新的。希望各位可以监督我,我们一起学习进步,加油,各位

总括

Java设计模式是一套被广泛应用于软件开发中的经典设计思想和解决方案。它们通过提供一种可重用的设计模式,帮助开发人员解决常见的设计问题,并提高代码的可读性、可复用性和可维护性。

三个主要类别

a

创建型模式(Creational Patterns)

b

结构型模式(Structural Patterns)

c

行为型模式(Behavioral Patterns)。

创建型模式(Creational Patterns)

关注对象的创建机制,包括如何实例化对象和组织对象的创建方式

常见的创建型模式

单例模式(Singleton Pattern)

确保一个类只有一个实例,并提供全局访问点。

工厂模式(Factory Pattern)

通过工厂类来创建对象,隐藏对象的创建逻辑。

抽象工厂模式(Abstract Factory Pattern)

提供一个接口,用于创建相关或依赖对象的家族,而不需要指定具体类。

建造者模式(Builder Pattern)

将一个复杂对象的构建过程与其表示分离,使得同样的构建过程可以创建不同的表示。

原型模式(Prototype Pattern)

通过复制现有对象来创建新对象,避免了使用构造函数创建对象的开销。

结构型模式(Structural Patterns)

关注对象之间的组合和关联关系,以及如何将对象组合成更大的结构

常见的结构型模式

适配器模式(Adapter Pattern)

将一个类的接口转换成客户端所期望的另一个接口。

桥接模式(Bridge Pattern)

将抽象部分与实现部分分离,使它们可以独立变化。

组合模式(Composite Pattern)

将对象组合成树形结构以表示部分-整体的层次结构。

装饰者模式(Decorator Pattern)

动态地将责任添加到对象上。

外观模式(Facade Pattern)

为子系统中的一组接口提供一个统一的接口。

享元模式(Flyweight Pattern)

通过共享对象来减少内存使用。

行为型模式(Behavioral Patterns)

关注对象之间的通信和协作方式,以及对象之间的责任分配

常见的行为型模式

观察者模式(Observer Pattern)

定义了对象之间的一对多依赖关系,当一个对象的状态发生变化时,其依赖者会收到通知并自动更新。

策略模式(Strategy Pattern)

定义了一系列算法,并将其封装成独立的类,使得它们可以互相替换。

模板方法模式(Template Method Pattern)

定义了一个算法的骨架,将一些步骤延迟到子类中实现。

迭代器模式(Iterator Pattern)

提供一种顺序访问聚合对象中各个元素的方法,而不需要暴露其内部表示。

命令模式(Command Pattern)

将请求封装成对象,以便可以用不同的请求来参数化其他对象。

职责链模式(Chain of Responsibility Pattern)

将请求的发送者和接收者解耦,使得多个对象都有机会处理请求。

总结

通过熟练掌握和应用这些设计模式,开发人员可以更加高效地解决常见的设计问题,并提供可靠和可扩展的软件解决方案。

相关文章
|
4天前
|
设计模式 安全 Java
【JAVA】Java 中什么叫单例设计模式?请用 Java 写出线程安全的单例模式
【JAVA】Java 中什么叫单例设计模式?请用 Java 写出线程安全的单例模式
|
3天前
|
设计模式 Java
Java 设计模式:混合、装饰器与组合的编程实践
【4月更文挑战第27天】在面向对象编程中,混合(Mixins)、装饰器(Decorators)和组合(Composition)是三种强大的设计模式,用于增强和扩展类的功能。
9 1
|
3天前
|
设计模式 消息中间件 Java
Java 设计模式:探索发布-订阅模式的原理与应用
【4月更文挑战第27天】发布-订阅模式是一种消息传递范式,被广泛用于构建松散耦合的系统。在 Java 中,这种模式允许多个对象监听和响应感兴趣的事件。
20 2
|
3天前
|
设计模式 算法 Java
Java 设计模式:探索策略模式的概念和实战应用
【4月更文挑战第27天】策略模式是一种行为设计模式,它允许在运行时选择算法的行为。在 Java 中,策略模式通过定义一系列的算法,并将每一个算法封装起来,并使它们可以互换,这样算法的变化不会影响到使用算法的客户。
10 1
|
3天前
|
设计模式 Java
Java 设计模式:工厂模式与抽象工厂模式的解析与应用
【4月更文挑战第27天】设计模式是软件开发中用于解决常见问题的典型解决方案。在 Java 中,工厂模式和抽象工厂模式是创建型模式中非常核心的模式,它们主要用于对象的创建,有助于增加程序的灵活性和扩展性。本博客将详细介绍这两种模式的概念、区别以及如何在实际项目中应用这些模式。
8 1
|
6天前
|
设计模式 算法 Java
[设计模式Java实现附plantuml源码~行为型]定义算法的框架——模板方法模式
[设计模式Java实现附plantuml源码~行为型]定义算法的框架——模板方法模式
|
6天前
|
设计模式 JavaScript Java
[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式
[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式
|
7天前
|
设计模式 存储 JavaScript
[设计模式Java实现附plantuml源码~创建型] 多态工厂的实现——工厂方法模式
[设计模式Java实现附plantuml源码~创建型] 多态工厂的实现——工厂方法模式
|
7天前
|
设计模式 Java Go
[设计模式Java实现附plantuml源码~创建型] 集中式工厂的实现~简单工厂模式
[设计模式Java实现附plantuml源码~创建型] 集中式工厂的实现~简单工厂模式
|
7天前
|
设计模式 存储 前端开发
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式
Java从入门到精通:2.2.1学习Java Web开发,了解Servlet和JSP技术,掌握MVC设计模式