
设计模式
bit-cafe
深入学习才能体会到知识带来的快了!
展开
-
设计模式在结算系统中的实战
结算系统主要是生成账单,当然账单有多种类型,不同账单生成的条件可能不同、账单数据组装可能不同、账单生成之后有不同的后续业务处理…… 个人对各个模式的理解和为何使用的理解:一、模板方法模式的抽象类多个业务处理流程一致,可以吧整个流程抽象到父类,在父类中定义整个流程的骨架。 公共的方法提升到父类,在父类实现、多个子类公用。 子类实现流程中自己使用的特殊处理二、策略模式策略模式是一个业务场景中需要的多种策略、算法的封装,这些算法是可以替换调用。 策略模式是面上策略抽象类编程...原创 2020-05-31 23:23:13 · 950 阅读 · 0 评论 -
设计模式-动态代理模式
摘要:代理模式有静态代理模式和动态代理模式,静态代理模式比较简单就过了,主要来看看动态代理模式以及动态代理模式在使用。动态代理是一种增强代码功能的方式、手段,其实我们可以通过继承重写、装饰也能对代码功能进行新功能的增加。但有些情况下使用代理模式、动态代理模式可能更适合。你在使用动态代理的时候有没有想过他是什么时候生成的,怎么生成的,为何调用一个接口方法就能调用委托类的方法并返回相关方法值;下面从代理示例、分析代理类生成过程以及代理类结构信息一步步了解代理类的生成原理……一、动态代理模式示例原创 2020-05-17 23:17:39 · 441 阅读 · 0 评论 -
单例的8种实现
单例模式是比较简单的设计模式,但是涉及到的知识点还是挺多,比如并发模式下的单例、序列化反序列化情况下保证单例、反射情况下保证单例,下面来看看各种情况下怎么保证单例。单例模式最基本的组成构造函数私有化、即不能随便创建对象;对外提供一个静态方法来获取对象。一、饿汉模式1、饿汉模式实现public class Single { /** * 类成员变量 */ private static Single single = new Single(); priv...原创 2020-05-09 00:06:20 · 1061 阅读 · 2 评论 -
设计模式-工厂模式
摘要: 工厂模式也是创建型模式中的一中、而工厂模式具体有三种即简单工厂模式(静态工厂模式)、工厂方法模式、抽象工厂模式。一、简单工厂模式简单工厂模式又称为静态工厂模式,实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例;将对象创建过程交给工厂方法来执行……1、UML类图2、角色工厂类、抽象产品类、抽...原创 2020-04-26 04:16:42 · 291 阅读 · 0 评论 -
设计模式-建造者模式
摘要:建造者模式是创建型模式大类中的一种,在面向对象的语言中无时无刻不在进行者对象的创建,下面来学习一下建造者模式来创建对象。在这篇文章中我们来学习一下下面几个问题1、什么是建造者模式2、使用建造者模式创建产品3、为何要用建造者模式,在怎样的场景下使用建造者模式4、演变后的建造者模式5、演变后的建造者模式相比构造函数和setter的优缺点一、建造者模式...原创 2020-04-22 00:39:17 · 323 阅读 · 0 评论 -
设计模式-责任链模式
摘要: 责任链设计模式说白了就是一个个的过滤器的使用,打个比方就好比水净化器一样,一层一层的处理直到最后其实责任链模式就是这样的没什么特别的下面来详细看看!一、责任链模式定义1、定义是一个请求有多个对象来处理,这些对象是一条链,但具体由哪个对象来处理,根据条件判断来确定,如果不能处理会传递给该链中的下一个对象,直到链执行完为止。2、类图没有统一实现方式,所以这里就不展示...原创 2020-03-15 01:12:16 · 291 阅读 · 0 评论 -
设计模式-观察者模式
摘要: 观察者设计模式定义了对象间的一种一对多的组合关系,以便一个对象的状态发生变化时,所有依赖于它的对象都得到通知并自动刷新。一、观察者模式定义1、定义: 观察者模式是一种对象行为模式。它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。在观察者模式中,主题是通知的发布者,它发出通知时并不需要知道谁是...原创 2020-03-08 02:47:45 · 436 阅读 · 0 评论 -
设计模式-模板方法模式
如约而至,开始模板方法模式学习的旅途……一、模板方法模式定义模板方法模式定义一个操作中的算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变算法结构即可重新定义该算法的某些特定步骤。二、模板方法模式使用场景1、使用场景(1)、当子类中有一些不变的通用的算法时,可以把这些提升到父类,减少代码重复,特定子类相关步骤在子类中完成。2、类图模...原创 2020-03-01 10:03:24 · 361 阅读 · 0 评论 -
设计模式-策略模式
摘要: 设计模式不是新技术而是一种解决特定环境下问题的策略,是各位前辈总结出的经验,不用设计模式能实现功能开发但使用设计模式写出的代码耦合性更低,扩展性更好。 在所有的文章中都会说项目中的if else 可以使用策略模式来解决,其实设计模式的书看了很多遍但一直不理解说使用策略模式替换if else 的判断,后来突然理解了,说的使用策略模式代替if else 其实不是完全不...原创 2020-02-22 12:07:31 · 592 阅读 · 0 评论 -
java 动态代理
动态代理中涉及到的类主要有如下jie原创 2014-10-12 16:23:42 · 1393 阅读 · 0 评论 -
工厂模式:静态工厂模式、工厂方法模式、抽象工厂模式
一、静态工厂模式二、工厂方法模式san原创 2014-11-02 20:15:51 · 3309 阅读 · 0 评论 -
Java 动态代理机制分析及扩展,第 1 部分
第 1 部分本文通过分析 Java 动态代理的机制和特点,解读动态代理类的源代码,并且模拟推演了动态代理类的可能实现,向读者阐述了一个完整的 Java 动态代理运作过程,希望能帮助读者加深对 Java 动态代理的理解和应用。9评论:王 忠平, 软件工程师, IBM何 平, 软件工程师, IBM2010 年 1 月 21 日内容转载 2014-10-12 17:06:16 · 1144 阅读 · 0 评论 -
深入Java单例模式
在GoF的23种设计模式中,单例模式是比较简单的一种。然而,有时候越是简单的东西越容易出现问题。下面就单例设计模式详细的探讨一下。 所谓单例模式,简单来说,就是在整个应用中保证只有一个类的实例存在。就像是Java Web中的application,也就是提供了一个全局变量,用处相当广泛,比如保存全局数据,实现全局性的操作等。 1. 最简单的实现 首先,能够想到的最简单的实现转载 2014-10-14 22:55:46 · 819 阅读 · 0 评论 -
观察者模式
观察者模式:原创 2014-10-24 20:12:32 · 1038 阅读 · 0 评论