随笔分类 -  设计模式

java中常见设计模式
摘要:一、概念 装饰者模式(Decorator Pattern)是指在不改变原有对象的基础之上,将功能附加到对象上,提供了比继承更有弹性的替代方案(扩展原有对象的功能),属于结构型模式。 简言之:大桶套小桶 二、实现 需求:现在有人在路边卖煎饼,原价5元,加1个鸡蛋1元,加1个香肠2元,要求给顾客做两个煎 阅读全文
posted @ 2020-08-16 16:52 落雨有清·风 阅读(207) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除 一、概念 适配器模式(Adapter Pattern)是指将一个类的接口转换成客户期望的另一个接口,使原本的接口不兼容的类可以一起工作,属于结构型设计模式。 二、实现 需求:实现一个变压器,将220V交流电转换成5V直流电 创建220V交流电和5V直流 阅读全文
posted @ 2020-08-15 17:30 落雨有清·风 阅读(103) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 一、概念 模板方法模式(Template Method Pattern)是指定义一个算法的骨架,并允许子类为一个或者多个步骤提供实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法的某些步骤。 生活中有很多事情是有规律可循的,比如做菜,基 阅读全文
posted @ 2020-08-06 23:22 落雨有清·风 阅读(90) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 一、概念 策略模式(Strategy Pattern)是指定义了算法家族、分别封装起来,让它们之间可以互相替换,此模式让算法的变化不会影响到使用算法的用户。 简言之:为达到某种目的有多个方案,策略模式就是将这些方案封装起来,以便使用。 二、实现 需求 阅读全文
posted @ 2020-08-06 21:33 落雨有清·风 阅读(111) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 一、概念 代理模式(Porxy Pattern)是指为其他对象提供一种代理,以控制对这个对象的访问。 简言之:房产中介,售票黄牛都属于代理。 二、实现 1.静态代理 需求:实现父亲替儿子找对象。 首先构造一个儿子,并且具有找对象的方法。 1 publ 阅读全文
posted @ 2020-07-22 23:03 落雨有清·风 阅读(147) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 一、概念 原型模式(Prototype Pattern)是指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 简言之:克隆 二、使用场景 1.需要创建大量相同类型的对象,比如打飞机游戏中的飞机 三、实现 需求:实现孙悟空的一个技能,拔一 阅读全文
posted @ 2020-07-19 01:48 落雨有清·风 阅读(151) 评论(0) 推荐(0)
摘要:摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 工厂是生产产品,java中的工厂是对象实例化的封装,用户无需关心对象实例化过程。 一简单工厂 需求:构造不同课程的实例(语文,英语),每门课程都有公共方法:学习。 OK,这个简单,提起键盘就是敲。首先写出课程抽象类以及语文,英语课程。 1 // 阅读全文
posted @ 2020-07-08 22:58 落雨有清·风 阅读(168) 评论(0) 推荐(0)
摘要:本文内容源于视频教程,若有侵权,请联系作者删除。 一、定义 单例模式(Singleton Pattern)是指确保一个类在任何情况 下都绝对只有一个实例,并提供一个全局访问点。 二、特点 1.构造方法私有 2.有一个全局访问点 三、举例 以太阳为例 1.饿汉式 1 public class SunH 阅读全文
posted @ 2020-07-04 17:56 落雨有清·风 阅读(125) 评论(0) 推荐(0)
摘要:1.开闭原则 开闭原则(Open-Closed Principle, OCP)是指一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。 简言之:扩展功能时不要修改原有代码,而是新增代码,保证不影响原有的功能。 2.依赖倒置原则 依赖倒置原则(Dependence Inversion Princi 阅读全文
posted @ 2020-07-02 22:02 落雨有清·风 阅读(135) 评论(0) 推荐(0)