![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
一人一场雨
这个作者很懒,什么都没留下…
展开
-
好记性不如自己理 - 设计模式
前言:本文首先记录一下设计的六大原则,然后再逐一谈谈23种设计模式。 (PS:本文只做个人理解记录,有问题的地方欢迎各位指正补充) 设计的六大原则: 遵循单一职责原则 一个类只做一类事情。 举例: Person类就只管人的基本信息,需要给人加组织结构(PersonManager)的就不要在这个类里面杂糅。 开闭原则 开放拓展,封闭修改(需要进行新功能开发的时候,是以拓展的方式,而不是以修改原有代码的方式)。 抽象化设计,多态是开闭原则的关键。 里氏代换原则(LSP) 所有使用父类的地方,都可以用其子原创 2020-08-25 23:12:20 · 231 阅读 · 1 评论 -
JAVA-装饰者(Decorator)设计模式的个人理解
接着之前自己理解的建造者模式写的装饰者模式的理解~ 还是先举个例 上次用点快餐来距离建造者模式,这次还是用吃的,用煎饼来说吧! 顾客(客户端)要买一个煎饼(这个煎饼最后加完料,就是顾客最终想要的东西,也就是客户端最后获得的东西)。 顾客找摊贩说 要加一个鸡蛋和一根火腿肠(开始装饰) 最后摊贩加工过后给的顾客是一个加了鸡蛋和火腿的煎饼 (这里为什么煎饼黑体,强调一些,顾客还是拿到的是煎饼,不管这个...原创 2019-06-16 00:19:58 · 454 阅读 · 0 评论 -
JAVA-建造者(Builder)设计模式的个人理解
最近补了一下java的几种常用的设计模型. builder设计模式对于我来说还是很少接触,在这里记录一下自己的理解。 先举个例 你去快餐店买“套餐”的时候(这里的套餐就是一个对象),你不会去考虑这个套餐如何做的,而是只考虑这个套餐有什么东西,你要吃什么。 A套餐:汉堡+可乐 B套餐:薯条+咖啡 以下为给你出餐的步骤: 1.你(客户端)只需要告诉餐厅服务员(...原创 2019-06-10 23:15:08 · 172 阅读 · 0 评论 -
JAVA-代理(Proxy)设计模式的个人理解
代理模式的三种 1.静态代理 2.动态代理(也叫JDK代理) 3.Cglib代理 代理模式概念: 代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展。 代理模式个人理解: 代理模式,<代理>顾名思义暂时代替某某担任某些责任。比如,明星的经纪人。当明星有一个需求比如:从上海出发到北京。那么经纪人就会安排明星:从上海 出发坐飞机到北京。 这里面的《坐飞机》...原创 2019-06-20 23:25:20 · 143 阅读 · 0 评论