上一页 1 2 3 4 5 6 ··· 16 下一页
摘要: java Type及项目实践 一. 泛型基础 泛型接口 泛型方法 匿名类 泛型边界 泛型擦除 Java的泛型基本上都是在编译器这个层次上实现的,在生成的字节码中是不包含泛型中的类型信息的,使用泛型的时候加上类型参数,在编译器编译的时候会去掉,这个过程成为类型擦除。 如在代码中定义List和List等 阅读全文
posted @ 2020-01-14 18:55 NeilZhang 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 开发过程中经常听到工厂这个词,其实根据个人经验,简单工厂用的是比较多的。工厂方法和抽象工厂是GoF23种设计模式中的一种,而我们常使用的简单工厂并不是一种设计模式,可以说是我们自己的一种俗称。 定义 简单工厂: 直接通过一个Factory类创建多个实体类的构造方式。 工厂方法: 一个抽象产品类,可以 阅读全文
posted @ 2020-01-05 18:34 NeilZhang 阅读(1374) 评论(1) 推荐(0) 编辑
摘要: 定义 顾名思义,责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型的设计模式属于行为型模式。 在这种模式中,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求, 阅读全文
posted @ 2020-01-04 11:07 NeilZhang 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 定义 迭代器模式把在元素之间游走的责任交给迭代器,而不是聚合对象。这不仅让聚合的接口和实现变得更简洁,也可以让聚合对象更专注在它所应该专注的事情上面(也就是管理对象集合),而不必去理会遍历的事情。 模板 Iterator (迭代器接口) 一般会提供上图中Iterator三种接口方法。 Concret 阅读全文
posted @ 2020-01-02 13:01 NeilZhang 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 定义 为其他对象提供一种代理,以控制对这个对象的访问。代理对象在客户端和目标对象之间起到中介的作用。(结构型) 如果不知道代理模式,可能大家对代理服务器都不叫熟悉。代替服务器代替请求者去发一起对另一个服务器的请求,他相当于请求的中间人。为什么要通过这个代理呢,那是因为客户端直接去访问服务器会被拒绝( 阅读全文
posted @ 2019-11-30 16:21 NeilZhang 阅读(1766) 评论(0) 推荐(0) 编辑
摘要: 定义 用于创建重复的对象,同时又能保证性能。它属于创建型设计模式,它提供了一种创建对象的最佳方法。 模板 Prototype (原型) Product 角色负责定义用于复制现有实例来生成新实例的方法。在示例程序中,由 Product 接口扮演此角色。 ConcretePrototype(具体的原型) 阅读全文
posted @ 2019-11-30 13:31 NeilZhang 阅读(853) 评论(0) 推荐(0) 编辑
摘要: 定义 就是定义算法骨架的方法 具体的操作:在模板中直接实现某些步骤的方法,通常这些步骤的实现算法是固定的,而且是不怎么变化的,因此就可以当作公共功能实现在模板里面。 其实写设计模式的系列笔记就是一种模板方法,每篇文章的流程(目录)都是一样的,我实现了每个部分的具体细节。 模板 模板方法比较简单,第一 阅读全文
posted @ 2019-11-20 21:21 NeilZhang 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 装饰模式 定义 装饰者模式又称为包装(wrapper)模式。装饰者模式对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。 模板 抽象构件(Component)角色:给出一个抽象接口,以规范准备接受附加责任的对象。 具体构件(ConCreteComponent)角色:定义一个将要接受附加责任 阅读全文
posted @ 2019-11-20 20:07 NeilZhang 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 定义 对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。 模板 状态模式包含以下主要角色。 环境(Context)角色:也称为上下文,它定义了客户感兴趣的接口,维护一个当前状态,并将与状态相关的操作委托给当前状态对象来处理。 抽象状态(Stat 阅读全文
posted @ 2019-11-17 20:23 NeilZhang 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 定义 享元(Flyweight)模式的定义:运用共享技术来有効地支持大量细粒度对象的复用。它通过共享已经存在的又橡来大幅度减少需要创建的对象数量、避免大量相似类的开销,从而提高系统资源的利用率。 模板 1. FlyweightFactory享元工厂类:创建并管理享元对象,享元池一般设计成键值对 2. 阅读全文
posted @ 2019-11-16 08:56 NeilZhang 阅读(252) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 16 下一页