Java设计模式
文章平均质量分 61
Pole丶逐
天道酬勤,学不可以已。
展开
-
设计模式之工厂模式(简单工厂,工厂方法,抽象工厂)
简单工厂模式(Simple Factory)工厂方法模式(Factory Method)抽象工厂模式(Abstract Factory)简单工厂其实不是一个标准的的设计模式。 23种设计模式中只有「工厂方法模式」与「抽象工厂模式」1. 简单工厂模式//接口类public interface Food { void food();}// 实现类1public class RiceBook implements Food{ @Override public vo.原创 2021-07-14 09:54:54 · 195 阅读 · 0 评论 -
设计模式之单例模式
设计模式之单理模式定义与介绍指一个类只有一个实例,且该类能自行创建这个实例的一种模式。使用场景: 某类需要频繁实例化,而创建的对象又频繁被销毁的时候,如多线程的线程池、网络连接池等。优点:在内存里只有一个实例,减少了内存的开销,尤其是频繁的创建和销毁实例(比如管理学院首页页面缓存)。避免对资源的多重占用(比如写文件操作)。缺点:单例模式的功能代码通常写在一个类中,如果功能设计不合理,扩展困难。单理模式的实现1. 懒汉式,线程不安全使用了懒加载的设计,即只在需要调用原创 2022-03-10 11:33:41 · 272 阅读 · 1 评论 -
设计模式之策略模式
定义与介绍该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。策略模式属于对象行为模式,它通过对算法进行封装,把使用算法的责任和算法的实现分割开来,并委派给不同的对象对这些算法进行管理。优点:多重条件语句不易维护,而使用策略模式可以避免使用多重条件语句,如 if…else 语句、switch…case 语句。策略模式提供了一系列的可供重用的算法族,恰当使用继承可以把算法族的公共代码转移到父类里面,从而避免重复的代码。策略模式提供了对开闭原则原创 2022-03-11 10:00:00 · 102 阅读 · 0 评论 -
设计模式之装饰者模式
定义与介绍指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,它属于对象结构型模式。优点:装饰者是继承的有力补充,比继承灵活,在不改变原有对象的情况下,动态的给一个对象扩展功能,即插即用通过使用不用装饰类及这些装饰类的排列组合,可以实现不同效果缺点:装饰者模式造成很多的策略类,增加维护难度。策略模式的实现抽象构件(Component)角色:定义一个抽象接口以规范准备接收附加责任的对象。具体构件(ConcreteComponent)角色:实现原创 2022-03-12 10:15:00 · 443 阅读 · 0 评论 -
设计模式之观察者模式
定义与介绍指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式,它是对象行为型模式。优点:降低了目标与观察者之间的耦合关系,两者之间是抽象耦合关系。符合依赖倒置原则。目标与观察者之间建立了一套触发机制。缺点:目标与观察者之间的依赖关系并没有完全解除,而且有可能出现循环引用。当观察者对象很多时,通知的发布会花费很多时间,影响程序的效率。策略模式的实现抽象主题(Subject)角原创 2022-03-13 16:33:59 · 119 阅读 · 0 评论