设计模式
bylijinnan
这个作者很懒,什么都没留下…
展开
-
读《研磨设计模式》-代码笔记-单例模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]public class Singleton {}/* * 懒汉模式。注意,getInstance如果在多线程环境中调用,需要加上synchronized,否则存在线程不...2012-08-20 19:28:56 · 59 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-备忘录模式-Memento
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.List;/* * 备忘录模式的功能是,在不破坏封装性的前提下,捕获一个对象的内部...2012-09-23 00:05:17 · 114 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-解释器模式-Interpret
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]package design.pattern;/* * 解释器(Interpreter)模式的意图是可以按照自己定义的组合规则集合来组合可执行对象 * * 代码示例实现XM...2012-09-23 23:55:50 · 86 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-外观模式-Facade
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/* * 百度百科的定义: * Facade(外观)模式为子系统中的各类(或结构与方法)提供一个简明一致的界面, * 隐藏子系统的复杂性,使子系统更加容易使用。他是为子系统中...2012-09-25 23:46:58 · 83 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-适配器模式-Adapter
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]package design.pattern;/* * 适配器模式解决的主要问题是,现有的方法接口与客户要求的方法接口不一致 * 可以这样想,我们要写这样一个类(Adapter):...2012-09-26 00:23:39 · 120 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-观察者模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.List;import java.util.Observable;import jav...原创 2012-09-26 00:28:16 · 91 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-中介者模式-Mediator
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/* * 中介者模式(Mediator):用一个中介对象来封装一系列的对象交互。 * 中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。...原创 2012-09-26 00:31:33 · 123 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-组合模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.List;abstract class Component { public...原创 2012-09-26 00:32:12 · 117 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-迭代器模式-Iterator
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.Arrays;import java.util.List;/** * Iterator模式提供一种方法顺序访问一个聚合对象中各个元素,而又不...原创 2012-09-26 00:32:27 · 101 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-命令模式-Command
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.Collection;import java.util.List;/** * GO...2012-10-06 23:40:19 · 91 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-访问者模式-Visitor
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.List;interface IVisitor { //第二次分派,Visito...2012-10-06 23:43:08 · 87 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-状态模式-State
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/*当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况把状态的判断逻辑转移到表示...2012-10-07 16:56:39 · 80 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-享元模式-Flyweight
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.Collection;import java.util.HashMap;impor...2012-09-21 21:01:27 · 143 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-抽象工厂模式-Abstract Factory
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]package design.pattern;/* * Abstract Factory Pattern * 抽象工厂模式的目的是: * 通过在抽象工厂里面定义一组产品接...2012-09-21 20:59:46 · 94 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-职责链模式-Chain Of Responsibility
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/** * 业务逻辑:项目经理只能处理500以下的费用申请,部门经理是1000,总经理不设限。简单起见,只同意“Tom”的申请 * bylijinnan */...2012-09-15 17:57:52 · 90 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-代理模式-Proxy
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.la...2012-08-20 19:32:45 · 80 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-生成器模式-Builder
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/** * 生成器模式的意图在于将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示(GoF) * 个人理解: * 构建一个复杂的对象,对于创建者(Build...原创 2012-08-21 19:32:25 · 101 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-原型模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/** * Effective Java 建议使用copy constructor or copy factory来代替clone()方法: * 1.public Product...2012-08-21 19:34:13 · 96 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-模板方法模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatemen...2012-08-23 18:12:21 · 120 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-组合模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.util.ArrayList;import java.util.List;abstract class Component { public...2012-08-23 18:13:27 · 119 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-简单工厂模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]package design.pattern;/* * 个人理解:简单工厂模式就是IOC; * 客户端要用到某一对象,本来是由客户创建的,现在改成由工厂创建,客户直接取就好了...2012-08-24 16:56:08 · 81 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-工厂方法模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]package design.pattern;/* * 工厂方法模式:使一个类的实例化延迟到子类 * 某次,我在工作不知不觉中就用到了工厂方法模式(称为模板方法模式更...2012-08-24 16:57:36 · 93 阅读 · 0 评论 -
《重构,改善现有代码的设计》第八章 Duplicate Observed Data
[code="java"]import java.awt.Color;import java.awt.Container;import java.awt.FlowLayout;import java.awt.Label;import java.awt.TextField;import java.awt.event.FocusAdapter;import java.awt...2012-12-04 20:34:08 · 156 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-策略模式-Strategy
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/*策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化简单理解:1、将不同的策略提炼出一个共同接...2012-09-12 18:24:57 · 86 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-桥接模式
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]/** * 个人觉得关于桥接模式的例子,蜡笔和毛笔这个例子是最贴切的:http://www.cnblogs.com/zhenyulu/articles/67016.html * ...2012-09-12 18:27:50 · 80 阅读 · 0 评论 -
读《研磨设计模式》-代码笔记-装饰模式-Decorator
[b]声明:本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客[url]http://chjavach.iteye.com/[/url][/b][code="java"]import java.io.BufferedOutputStream;import java.io.DataOutputStream;import java.io.FileOu...2012-09-15 17:56:05 · 108 阅读 · 0 评论 -
J2EE设计模式-Intercepting Filter
Intercepting Filter类似于职责链模式有两种实现其中一种是Filter之间没有联系,全部Filter都存放在FilterChain中,由FilterChain来有序或无序地把把所有Filter调用一遍。没有用到链表这种数据结构。示例如下:[code="java"]package com.ljn.filter.custom;import java.util...2013-11-27 16:56:32 · 96 阅读 · 0 评论