随笔分类 -  Java设计模式

摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###1.前言 每个代理类只能为一个接口服务,这样程序开发中必然会产生许多的代理类. 所以我们就会想办法可以通过一个代理类完成全部的代理功能,那么我们就需要用动态代理 ### 阅读全文
posted @ 2019-08-04 23:06 LittleDonkey 阅读(270) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 前言 设计模式的本质是面向对象设计原则的实际运用, 是对类的封装性、继承性和多态性以及类的关联关系和组合关系的充分理解设计模式的三种分类 创建型模式:对象实例化的模式,创建型 阅读全文
posted @ 2019-08-02 12:45 LittleDonkey 阅读(183) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 将作用于元素的操作分离出来封装成独立的类 优点 符合单一职责原则 元素类可以通过接受不同的访问者来实现对不同操作的扩展。 缺点 具体元素对访问者公布细节,违背了迪米特法 阅读全文
posted @ 2019-08-02 11:36 LittleDonkey 阅读(134) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 创建型模式 主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”单例(Singleton)模式: 某个类只能生成一个实例,该类提供了一个全局访问点供外部获 阅读全文
posted @ 2019-08-02 10:39 LittleDonkey 阅读(136) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 定义一个操作中算法的骨架,而将这些步骤延迟到子类中, 模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。 不变部分的算法封装到父类中实现,而把可 阅读全文
posted @ 2019-08-02 10:00 LittleDonkey 阅读(116) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 前言 对象具备某个行为,但是在不同的场景中,该行为有不同的实现算法。比如一个人的 是准备一组算法,并将这组算法封装到一系列的策略类里面,作为一个抽象策略类的子类。主要解决 在 阅读全文
posted @ 2019-08-01 23:31 LittleDonkey 阅读(119) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 状态模式把所研究的对象的行为包装在不同的状态对象里, 每一个状态对象都属于一个抽象状态类的一个子类。 状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变 阅读全文
posted @ 2019-08-01 23:16 LittleDonkey 阅读(164) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 可以对用户请求进行层层过滤处理责任链(Chain of Responsibility)模式的定义: 为了避免请求发送者与多个请求处理者耦合在一起, 将所有请求的处理者通 阅读全文
posted @ 2019-08-01 22:57 LittleDonkey 阅读(186) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 间接地访问该对象,从而限制、增强或修改该对象的一些特性。 代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。 静态代理 是由程序员创建或特定工具自动 阅读全文
posted @ 2019-07-31 23:19 LittleDonkey 阅读(108) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 原型模式的本质就是clone,可以解决构建复杂对象的资源消耗问题 用一个已经创建的实例作为原型,通过复 阅读全文
posted @ 2019-07-31 23:06 LittleDonkey 阅读(92) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 观察者(Observer)模式的定义: 指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。 这种模式有时又称作发布-订 阅读全文
posted @ 2019-07-31 22:47 LittleDonkey 阅读(134) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 备忘录(Memento)模式的定义: 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态, 以便以后当需要时能将该对象恢复到原先保存的状态。该模式又叫 阅读全文
posted @ 2019-07-31 22:36 LittleDonkey 阅读(165) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 主要是通过中介对象来封装对象之间的关系 同时通过引用中介者对象来减少系统对象之间关系,提高了对象的可复用和系统的可扩展性。抽象中介者(Mediator)角色: 它是中介 阅读全文
posted @ 2019-07-31 22:29 LittleDonkey 阅读(133) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 迭代器(Iterator)模式的定义: 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。 迭代器模式是一种对象行为型模式, 在客户访问类与聚合类之间 阅读全文
posted @ 2019-07-31 22:19 LittleDonkey 阅读(173) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 相同对象只要保存一份,这降低了系统中对象的数量,从而降低了系统中细粒度对象给内存带来的压力。元模式会创建一个享元池将这些公共的实例保存在享元池中。 池技术了,Strin 阅读全文
posted @ 2019-07-31 22:10 LittleDonkey 阅读(129) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 工厂方法模式的主要优点有: 解决简单工厂模式的缺点: 工厂方法模式把具体产品的创建推迟到工厂类的子类(具体工厂)中, 此时工厂类不再负责所有产品的创建,而只是给出具体工厂必须 阅读全文
posted @ 2019-07-31 21:55 LittleDonkey 阅读(182) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 为一个复杂的模块或子系统提供一个外界访问的接口 子系统相对独立,外界对子系统的访问只要黑箱操作即可 通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访 阅读全文
posted @ 2019-07-31 21:45 LittleDonkey 阅读(104) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 不改变其结构的情况下,可以动态地扩展其功能。 装饰者和被装饰者之间必须是一样的类型,也就是要有共同的超类。 这里应用继承并不是实现方法的复制,而是实现类型的匹配。 抽象 阅读全文
posted @ 2019-07-31 21:31 LittleDonkey 阅读(114) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 概述 将对象组合成树状的层次结构的模式,用来表示“部分-整体”的关系, 使用户对单个对象和组合对象具有一致的访问性。组合模式实现的最关键的地方是: 简单对象和复合对象必须实现 阅读全文
posted @ 2019-07-31 21:06 LittleDonkey 阅读(144) 评论(0) 推荐(0) 编辑
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 定义 将一个请求封装为一个对象, 使发出请求的责任和执行请求的责任分割开。 这样两者之间通过命令对象进行沟通, 这样方便将命令对象进行储存、传递、调用、增加与管理。 抽象命令 阅读全文
posted @ 2019-07-31 00:46 LittleDonkey 阅读(127) 评论(0) 推荐(0) 编辑

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