设计模式 - 策略模式

2019-11-07
阅读 9 分钟
3.6k
在理解策略模式之前我们假设有这样一个需求场景:我们在写订单支付场景的代码时,客户可以选择多种支付方式,有银联支付、支付宝支付、微信支付、京东白条等等。然后我们就很可能就会编写出类似下面这样的代码:

设计模式 - 委派模式

2019-10-28
阅读 3 分钟
1.7k
更直白的表达就是,比如,我们想要盖一栋楼房,盖完之后我要刷漆,这些事情我自己肯定不能做,所以我这时候就会去找一个“包工头”来帮我完成这件事情,我只要告诉“包工头”我要盖房子、我要给房子刷漆等命令,其他的事情我不管,最终能够交付给我这个刷完漆房子就行。那么“包工头”也不可能自己来干的吧,这个时候他就会去...

设计模式 - 动态代理原理及模仿JDK Proxy 写一个属于自己的动态代理

2019-10-15
阅读 31 分钟
2.1k
本篇文章代码内容较多,讲的可能会有些粗糙,大家可以选择性阅读。 本篇文章的目的是简单的分析动态代理的原理及模仿JDK Proxy手写一个动态代理以及对几种代理做一个总结。 对于代理模式的介绍和讲解,网上已经有很多优质的文章,我这里就不会再过多的介绍了,这里推荐几篇优质的文章作为参考: 给女朋友讲解什么是代理...

设计模式 - 单例模式之多线程调试与破坏单例

2019-10-10
阅读 15 分钟
2.5k
在之前的 设计模式 - 单例模式(详解)看看和你理解的是否一样? 一文中,我们提到了通过Idea 开发工具进行多线程调试、单例模式的暴力破坏的问题;由于篇幅原因,现在单独开一篇文章进行演示:线程不安全的单例在多线程情况下为何被创建多个、如何破坏单例。

你不知道的 IDEA Debug调试小技巧

2019-10-09
阅读 2 分钟
10.9k
Intellij IDEA 的debug断点调试是有一个模式的选择的,就像下面这张图,平时我们都使用的是默认的 ALL(在Eclipse中默认是线程模式) ,这种模式我们只能将一个线程断下来,但其他线程却已经执行过了;而将其改为 Thread 后,就可以多个线程都断下来,并且可以很方便的切换线程的执行流程,这就是多线程调试。

设计模式 - 单例模式(详解)看看和你理解的是否一样?

2019-10-08
阅读 15 分钟
5.9k
单例模式是设计模式中相对简单且非常常见的一种设计模式,但是同时也是非常经典的高频面试题,相信还是有很多人在面试时会挂在这里。本篇文章主要针对单例模式做一个回顾,记录单例模式的应用场景、常见写法、针对线程安全进行调试(看得见的线程)以及总结。相信大家看完这篇文章之后,对单例模式有一个非常深刻的认识。

设计模式 - 工厂模式

2019-09-30
阅读 10 分钟
2.1k
我们都知道Java中一共有 23 种设计模式,其中工厂模式分为三种,即:简单工厂模式(不在 23 种设计模式之列)、工厂方法模式和抽象工厂模式;我们平时说的工厂模式,其实大都指工厂方法模式,这种模式是我们平时编码中用的频率最高的一种,在Spring源码中就有很多工厂模式的应用,比如 BeanFactory。

设计模式 - 导读

2019-09-30
阅读 2 分钟
2k
发布说明 其实不用设计模式并非不可以,但是用好设计模式能帮助我们更好地解决实际问题。 设计模式天天都在用,但自己却无感知。 本系列文章,初衷是为了记录日常经常使用的设计模式,也给学习设计模式的同学们提供参考和查阅。 文章内容有自己的理解,也有参考网络,如有侵犯,请告知删除。 学习设计模式的重要性 设计...

设计模式 - 七大设计原则(四)- 合成复用原则与设计原则总结

2019-09-27
阅读 2 分钟
3.9k
概述 简单介绍一下七大设计原则: 开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭 依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体 单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化 接口隔离原则:使用多个专门的接口,而不是使用一个总接口 迪米特法则(最少知道原则):只和朋...

设计模式 - 七大设计原则(三)- 迪米特法则与里氏替换原则

2019-09-26
阅读 6 分钟
3.1k
概述 简单介绍一下七大设计原则: 开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭 依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体 单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化 接口隔离原则:使用多个专门的接口,而不是使用一个总接口 迪米特法则(最少知道原则):只和朋...

设计模式 - 七大设计原则(二)

2019-09-25
阅读 4 分钟
2k
简单介绍一下七大设计原则:开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化接口隔离原则:使用多个专门的接口,而不是使用一个总接口迪米特法则(最少知道原则):只和朋友交流(成...

设计模式 - 七大设计原则(一)

2019-09-25
阅读 5 分钟
2.6k
简单介绍一下七大设计原则:开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体单一职责原则:一个接口只负责一件事情,只能有一个原因导致类变化接口隔离原则:使用多个专门的接口,而不是使用一个总接口迪米特法则(最少知道原则):只和朋友交流(成...