随笔分类 -  23种设计模式

动态代理类理解
摘要:JDK 动态代理机制 1.定义一个接口及其实现类; public interface Rent { public void rent(); } public class Host implements Rent{ public void rent() { System.out.println("房东 阅读全文
posted @ 2022-01-07 23:08 upupup-999 阅读(43) 评论(0) 推荐(0) 编辑
6.桥接模式
摘要:现在对不同手机类型的 不同品牌实现操作编程(比如: 开机、关机、上网,打电话等), 如图: 传统方案解决手机操作问题 传统方案解决手机使用问题(类图): 传统方案解决手机操作问题分析 1) 扩展性问题(类爆炸),如果我们再增加手机的样式(旋转式),就需要增加各个品 牌手机的类,同样如果我们增加一个手 阅读全文
posted @ 2021-07-06 13:41 upupup-999 阅读(212) 评论(0) 推荐(0) 编辑
5.适配器模式
摘要:现实生活中的适配器例子 泰国插座用的是两孔的(欧标),可以买个多功能转换插头 (适配器) ,这样就可以 使用了 基本介绍 1) 适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表 示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同 工作。其别名 阅读全文
posted @ 2021-07-05 14:56 upupup-999 阅读(95) 评论(0) 推荐(0) 编辑
4.建造者模式
摘要:盖房项目需求 1) 需要建房子:这一过程为打桩、砌墙、封顶 2) 房子有各种各样的,比如普通房,高楼,别墅,各种房子的过程虽然一样,但是 要求不要相同的. 传统方式解决盖房需求 抽象过程AbstractHouse package com.wang.builder; public abstract c 阅读全文
posted @ 2021-07-04 21:57 upupup-999 阅读(45) 评论(0) 推荐(0) 编辑
3.原型模式
摘要:使用场景可用于飞机大战复制敌机 传统方式解决克隆羊问题 代码演示 需要复制的Sheep类 package com.wang.prototype; public class Sheep { private String name; private int age; private String col 阅读全文
posted @ 2021-07-01 10:01 upupup-999 阅读(53) 评论(0) 推荐(0) 编辑
2.工厂模式
摘要:看一个具体的需求 看一个披萨的项目:要便于披萨种类的扩展,要便于维护 1) 披萨的种类很多(比如 GreekPizz、CheesePizz 等) 2) 披萨的制作有 prepare,bake, cut, box 3) 完成披萨店订购功能 传统代码就省略了 传统的方式的优缺点 1) 优点是比较好理解, 阅读全文
posted @ 2021-06-30 11:46 upupup-999 阅读(42) 评论(0) 推荐(0) 编辑
1.单例模式
摘要:单例设计模式介绍 所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类 只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。 比如Hibernate的SessionFactory,它充当数据存储源的代理,并负责创建Session 对象。 SessionFac 阅读全文
posted @ 2021-06-29 12:08 upupup-999 阅读(40) 评论(0) 推荐(0) 编辑
设计模式的七大原则
摘要:设计模式常用的七大原则有: 1) 单一职责原则 2) 接口隔离原则 3) 依赖倒转(倒置)原则 4) 里氏替换原则 5) 开闭原则 6) 迪米特法则 7) 合成复用原则 1.单一职责原则 对类来说的,即一个类应该只负责一项职责。如类A负责两个不同职责:职责1,职责2。 当职责1需求变更而改变A时,可 阅读全文
posted @ 2021-06-28 09:57 upupup-999 阅读(102) 评论(0) 推荐(0) 编辑




点击右上角即可分享
微信分享提示