http://my.oschina.net/u/213327/blog/637595
设计模式的六大原则
1、开闭原则(Open Close Principle):对扩展开放对修改关闭
2、里氏代换原则(Liskov Substitution Principle):父类出现的地方,子类也可出现
3、依赖倒转原则(Dependence Inversion Principle):依赖抽象而不依赖具体
4、接口隔离原则(Interface Segregation Principle):多个隔离的接口,比使用单个接口要好
5、迪米特法则(最少知道原则)(Demeter Principle):最少知道原则。一个实体应当尽量少的与其他实体之间发生相互作用
6、合成复用原则(Composite Reuse Principle):尽量使用合成/聚合的方式,而不是使用继承。
创建型模式(五种)
工厂方法模式(Factory):工厂创建对象
抽象工厂模式(Abstractfactory):抽象工厂实例创建对象,工厂可修改,灵活度高
单例模式(Sington):适用于只需要一个对象的情况
建造者模式(Builder):创建复杂对象
原型模式(Prototype):复制对象,包括深度复制和浅度复制,深度复制重建引用对象,浅度复制不创建
结构型模式(七种)
适配器模式(Adapter):开发阶段不考虑,适用于后期维护时添加功能
装饰器模式(Decorator):扩展方法功能,可在方法执行前后加代码
代理模式(Proxy):调用引用对象方法实现自身功能
外观模式(Facade):CPU,内存,硬盘组装成电脑。组装多个对象实现自身功能。
桥接模式(Bridge):通过setXxx方法任意修改引用实例,调用同样方法实现不同功能
组合模式(Composite):部分与整体,常用于表示树形结构
享元模式(Flyweight):维护资源集合,经典案例:数据库连接池,避免重新开启数据库链接的开销
行为型模式(十一种)
策略模式(Strategy):定义多个不同的实现类,这些类实现公共接口,通过调用接口调用不同实例得到不同结果
模板方法模式(Template):父类定义公共方法,不同子类重写父类抽象方法,得到不同结果
观察者模式(Observer):目标方法被调用,通知所有观察者
迭代子模式(Interator):迭代器实现原理
责任链模式(ChainOfResponsibility):依次引用,依次执行
命令模式(Commond):各司其职,逐层调用,有点像三层架构
备忘录模式(Memento):建立原始对象副本,用于存储恢复原始对象数据
状态模式(Stage):通过改变状态,改变行为
访问者模式(Visitor):结构与操作解耦。灵活的操作,放入固定的结构中执行
中介者模式(Mediator):中介类维护对象行为。主程序直接调用中介对象即可
解释器模式(Iterpreter):定义解释类,解释包装对象
分享到:
相关推荐
本文将通过一系列生动的例子来介绍Java中的23种设计模式,并重点探讨前七种设计模式的基本概念和应用场景。 #### 二、设计模式概览 设计模式可以分为三类:创建型模式、结构型模式和行为型模式。其中创建型模式...
### 趣味JAVA23种设计模式精解 #### 工厂模式(Factory) 工厂模式是一种常用的软件设计模式,其核心在于分离客户类和工厂类。想象一下,当你带女朋友去快餐店,无论是麦当劳还是肯德基,只需要简单地说一句“来四...
Java 设计模式是一种软件设计模式,旨在解决软件开发中的通用问题。共有 23 种设计模式,分为三大类:创建型模式、结构型模式和行为型模式。下面是对每种设计模式的详细解释: 创建型模式 1. 工厂模式(Factory)...
Java23种基本的设计模式整料整理学习源码示例zip Java23种基本的设计模式整料整理学习源码示例zip Java23种基本的设计模式整料整理学习源码示例zip Java23种基本的设计模式整料整理学习源码示例zip 设计模式的六大...
【追MM与Java的23种设计模式】这篇文章将编程中的设计模式与追求女性的场景相结合,用生动的例子解释了23种设计模式的核心概念。以下是各设计模式的详细解析: 1. **工厂模式(Factory)**:就像在麦当劳和肯德基...
JAVA设计模式是软件开发中一种常见的设计模式,用于解决软件设计中的一些常见问题。JAVA设计模式可以分为三大类:创建型模式、结构型模式和行为型模式。下面是对每种模式的详细介绍: 创建型模式 创建型模式主要...
在给定的描述中,提到了23种设计模式,这里我们将深入探讨其中的五种:工厂模式、建造者模式、工厂方法模式、原型模式和单例模式。 1. **工厂模式**:工厂模式是一种简单的创建型模式,它定义了一个创建对象的接口...
策略模式是对算法的包装,是吧使用算法的责任和算法本身分割开来,委派给不同的对象管理。 策略模式通常把一个系列的算法包装到一系列的... 一句话来形容:准备一组算法,并将每一个算法封装起来,使得他们可以互换。
Java设计模式尤其受到重视,因为它们可以帮助开发者编写出更加灵活、可维护和可扩展的代码。在Java中,设计模式主要分为三大类:创建模式、结构模式和行为模式。 创建模式关注对象的创建过程,旨在在不暴露创建细节...
Java设计模式是面向对象编程中的重要概念,它们是解决常见软件设计问题的模板,通过将通用解决方案模式化,使得开发者可以快速有效地应对各种场景。以下是对标题和描述中提到的几种设计模式的详细解释: 1. **工厂...
设计模式是软件开发中的一种重要思想,用于解决常见的设计问题并提供可复用的解决方案。在Java中,设计模式能够使代码更加简洁、高效,并且易于维护。本篇主要介绍几种常见的创建型设计模式:工厂模式和工厂方法模式...
SpringBoot-DesignModeJava 23种设计模式Demo案列大全 ☞ SpringBoot框架【每种设计模式都会标记不同的package,每种设计模式例子尽量全、尽量通俗易懂、尽量符合JavaDoc规范】如任务链测试说明: /** * 通过两种...
Java设计模式是面向对象编程中的一种最佳实践,它是一套被广泛接受和应用的解决常见设计问题的经验总结。设计模式的起源并非源自机械设计、建筑工程设计、工业电力化设计或水利工程设计,而是从软件工程中逐渐发展...
针对23种设计模式,分别写了demo并画了类图帮助理解。 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰...
"对数据结构知识的熟练有一个很好的锻炼",这句话强调了掌握各种数据结构(如数组、链表、栈、队列、树、图等)的重要性。例如,树形数据结构在表示层次关系、搜索和排序等方面非常有用,如二叉搜索树、红黑树、AVL...
JUnit作为一个强大的单元测试框架,它的设计理念、核心特性和背后的优秀设计模式,对Java开发人员来说是不可或缺的工具。通过理解和熟练运用JUnit,开发者可以更有效地进行测试,提升代码质量,降低维护成本,从而...
说起设计模式,很多编程语言的设计模式大同小异,而且设计模式很多,这里介绍一下java的几种常见的设计模式,其实设计模式是一个软件的设计思想,从大型软件架构出发,为了升级和维护方便,所以要降低依赖,降低耦合...
41. **学习方法**:学习编程时要注重实践,理解面向对象的思维,使用设计模式解决问题,注重代码的可扩展性、可维护性。 以上就是对标题和描述中提到的Java SE相关知识点的详细解析,这些知识点涵盖了Java桌面应用...
所以一句话概括就是: 为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类。 里氏代换原则(Liskov Substitution Principle):对开闭原则的补充。任何基类可以出现的地方,子类...