小谈设计模式(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)

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

总结

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

相关文章
|
5月前
|
设计模式 Java Spring
Java 设计模式之责任链模式:优雅处理请求的艺术
责任链模式通过构建处理者链,使请求沿链传递直至被处理,实现发送者与接收者的解耦。适用于审批流程、日志处理等多级处理场景,提升系统灵活性与可扩展性。
575 2
|
5月前
|
设计模式 网络协议 数据可视化
Java 设计模式之状态模式:让对象的行为随状态优雅变化
状态模式通过封装对象的状态,使行为随状态变化而改变。以订单为例,将待支付、已支付等状态独立成类,消除冗长条件判断,提升代码可维护性与扩展性,适用于状态多、转换复杂的场景。
499 0
|
7月前
|
设计模式 缓存 Java
Java设计模式(二):观察者模式与装饰器模式
本文深入讲解观察者模式与装饰器模式的核心概念及实现方式,涵盖从基础理论到实战应用的全面内容。观察者模式实现对象间松耦合通信,适用于事件通知机制;装饰器模式通过组合方式动态扩展对象功能,避免子类爆炸。文章通过Java示例展示两者在GUI、IO流、Web中间件等场景的应用,并提供常见陷阱与面试高频问题解析,助你写出灵活、可维护的代码。
|
5月前
|
设计模式 算法 搜索推荐
Java 设计模式之策略模式:灵活切换算法的艺术
策略模式通过封装不同算法并实现灵活切换,将算法与使用解耦。以支付为例,微信、支付宝等支付方式作为独立策略,购物车根据选择调用对应支付逻辑,提升代码可维护性与扩展性,避免冗长条件判断,符合开闭原则。
913 35
|
5月前
|
设计模式 消息中间件 传感器
Java 设计模式之观察者模式:构建松耦合的事件响应系统
观察者模式是Java中常用的行为型设计模式,用于构建松耦合的事件响应系统。当一个对象状态改变时,所有依赖它的观察者将自动收到通知并更新。该模式通过抽象耦合实现发布-订阅机制,广泛应用于GUI事件处理、消息通知、数据监控等场景,具有良好的可扩展性和维护性。
455 8
|
10月前
|
设计模式 缓存 安全
【高薪程序员必看】万字长文拆解Java并发编程!(8):设计模式-享元模式设计指南
🌟 ​大家好,我是摘星!​ 🌟今天为大家带来的是并发编程中的经典对象复用设计模式-享元模式,废话不多说让我们直接开始。
207 0
|
7月前
|
设计模式 安全 Java
Java设计模式(一):单例模式与工厂模式
本文详解单例模式与工厂模式的核心实现及应用,涵盖饿汉式、懒汉式、双重检查锁、工厂方法、抽象工厂等设计模式,并结合数据库连接池与支付系统实战案例,助你掌握设计模式精髓,提升代码专业性与可维护性。
|
7月前
|
设计模式 XML 安全
Java枚举(Enum)与设计模式应用
Java枚举不仅是类型安全的常量,还具备面向对象能力,可添加属性与方法,实现接口。通过枚举能优雅实现单例、策略、状态等设计模式,具备线程安全、序列化安全等特性,是编写高效、安全代码的利器。
|
12月前
|
设计模式 Java 数据安全/隐私保护
Java 设计模式:装饰者模式(Decorator Pattern)
装饰者模式属于结构型设计模式,允许通过动态包装对象的方式为对象添加新功能,提供比继承更灵活的扩展方式。该模式通过组合替代继承,遵循开闭原则(对扩展开放,对修改关闭)。
|
设计模式 消息中间件 搜索推荐
Java 设计模式——观察者模式:从优衣库不使用新疆棉事件看系统的动态响应
【11月更文挑战第17天】观察者模式是一种行为设计模式,定义了一对多的依赖关系,使多个观察者对象能直接监听并响应某一主题对象的状态变化。本文介绍了观察者模式的基本概念、商业系统中的应用实例,如优衣库事件中各相关方的动态响应,以及模式的优势和实际系统设计中的应用建议,包括事件驱动架构和消息队列的使用。
265 6