设计模式
victor_wk
JavaServer
展开
-
设计模式
模式简介模式分类创建型结构型行为型创建型:工厂方法模式抽象工厂模式单例模式建造者模式原型模式结构型:适配器模式装饰器模式代理模式外观模式桥接模式组合模式享元模式行为型:策略模式模板方法模式观察者模式迭代子模式责任链模式命令模式备忘录模式状态模式访问者模式中介者模式解释器模式...原创 2019-03-07 13:51:35 · 170 阅读 · 0 评论 -
设计模式-模板方法模式
模板方法模式分析准备一个抽象类,将部分逻辑以具体方法以及具体构造子的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。先制定一个顶级逻辑框架,而将逻辑的细节留给具体的子类去实现。类图示例代码示例//模板方法模式public class TemplateModule { static abstr...原创 2019-05-07 09:56:13 · 104 阅读 · 0 评论 -
设计模式-策略模式
策略模式分析一个类的行为或其算法可以在运行时更改。如定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。类图示例代码示例//策略模式public class StrategyModule { public interface Strategy{ int doOperation(int num1 ,int num2); } st...原创 2019-05-06 16:36:32 · 89 阅读 · 0 评论 -
设计模式-享元模式
享元模式分析主要用于减少创建对象的数量,以减少内存占用和提高性能。尝试重用现有的同类对象,如果未找到匹配的对象,则创建新对象。代码示例//享元模式public class FlyweightModule { public interface Shape { void draw(); } static public class Circle i...原创 2019-05-06 13:55:31 · 77 阅读 · 0 评论 -
设计模式-组合模式
组合模式分析部分整体模式,是用于把一组相似的对象当作一个单一的对象。依据树形结构来组合对象,用来表示部分以及整体层次代码示例//组合模式public class CompositeModule { static class Employee{ private String name; private String dept; p...原创 2019-05-06 10:33:10 · 106 阅读 · 0 评论 -
设计模式-桥接模式
桥接模式分析用于把抽象化与实现化解耦,使得二者可以独立变化。通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。类图示例代码示例//桥接模式public class BridgeModule { interface DrawAPI{ void drawCircle(int radius, int x, int y); } static...原创 2019-05-06 09:53:33 · 83 阅读 · 0 评论 -
设计模式-外观模式
外观模式分析外观模式隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。为子系统中的一组接口提供了一个统一的访问接口,这个接口使得子系统更容易被访问或者使用。类图示例代码示例//外观模式public class FacadeModule { interface Parts{ void start(); void shutDown()...原创 2019-03-29 15:46:28 · 115 阅读 · 0 评论 -
设计模式-适配器模式
适配器模式分析简介适配器模式分为:类适配器模式对象适配器模式缺省适配器模式类适配器模式类适配器模式是通过继承的方式把被适配的类的api转换成目标api看下类图示例看下代码示例/*类适配器模式*/public class AdapterClassModule { interface User{ void method(); v...原创 2019-03-12 14:04:04 · 132 阅读 · 0 评论 -
设计模式-建造者模式
建造者模式建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的看代码示例public class BuildModule { static class Demo{ p...原创 2019-03-07 15:57:53 · 144 阅读 · 0 评论 -
设计模式-单例模式
单例模式分析单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。/*懒汉式-线程不安全 这种方式是最基本的实现方式,这种实现...原创 2019-03-07 15:26:31 · 131 阅读 · 0 评论 -
设计模式-代理模式
代理模式分析简介代理模式分为:静态代理模式动态代理模式静态代理模式静态代理在使用时,需要定义接口或者父类,被代理对象与代理对象一起实现相同的接口或者是继承相同父类看下类图代码示例/*静态代理模式*/public class StaticProxyModule { interface IUserDao{ void save(); }...原创 2019-03-25 15:37:02 · 105 阅读 · 0 评论 -
设计模式-装饰器模式
装饰器模式分析简介装饰器模式是一种用于代替继承的技术,无需通过继承增加子类就能扩展对象的新功能。使用对象的关联关系代替继承关系,更加灵活,同时避免类型体系的快速膨胀。降低系统的耦合度,可以动态的增加或删除对象的职责,并使得需要装饰的具体构建类和具体装饰类可以独立变化,以便增加新的具体构建类和具体装饰类。类图代码示例/*装饰器模式*/public class DecorateMod...原创 2019-03-14 10:57:26 · 149 阅读 · 0 评论 -
设计模式-原型模式
原型模式分析原型模式(PrototypePattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。.这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式。例如,一个对象需要在一个高代价的数据库操作之后被创建。我们可以缓存该对象,在下一个请求时返回它的克隆,在需要的时候更新数据...原创 2019-03-08 14:02:32 · 194 阅读 · 0 评论 -
设计模式-简单工厂、工厂方法、抽象工厂方法模式
工厂方法模式分析工厂方法模式定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 首先看一下下UML类图实示例 再来看下代码示例public class OperationFactory { interface Operation{ String operationResult(); } ...原创 2019-03-07 13:51:47 · 173 阅读 · 0 评论 -
设计模式-观察者模式
观察者模式分析定义一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。类图示例代码示例//观察者模式public class ObserverModule { static interface Observerable { public void registerObs...原创 2019-05-07 10:45:55 · 88 阅读 · 0 评论