设计模式
iteye_13532
这个作者很懒,什么都没留下…
展开
-
设计模式之命令模式
命令模式指的是,我们要做一件事情,但是在事前我们都不知道这件事前如何去做,只有在事情真正发生的时候才能确定如何去做,比如现在要处理一个数组,但是只有当拿到具体数组之后,才知道到底要如何处理这个数组,有可能每个数组的处理方式都不一样如下:首先定义一个处理数组的接口,该接口只定义了一个处理数组的方法,但是并为说明如何处理数组[code="java"]package com.yf.des...2012-07-10 23:09:36 · 64 阅读 · 0 评论 -
设计模式之单例模式
如果一个类,始终只能创建一个实例,则该类被称为单例类,这种模式被称为单例模式单例在内存中始终只有一份,所以不是线程安全的。单例又分饿汉型和懒汉型。饿汉型单例如下:[code="java"]package com.yf.designpattern.singleton;/* * 饿汉式单例 */public class Singleton1 { private ...2012-06-09 22:30:22 · 55 阅读 · 0 评论 -
设计模式之简单工厂
工厂模式的优点在于让调用者与对象创建分离,调用者需要对象时,只需向工厂发起请求即可简单工厂一般包括以下几个部分:抽象接口实现类工厂类通过以下代码可以看一下简单工厂的模型:抽象接口[code="java"]package com.yf.designpattern.simplefactory;public interface Car { public void ...2012-06-09 23:11:24 · 58 阅读 · 0 评论 -
设计模式之工厂方法
工厂方法是在简单工厂的基础上的进一步抽象,在简单工厂中,所有的对象都是通过一个工厂来创建,在工厂方法中,每个对象都有特定的工厂来创建。抽象接口(车)[code="java"]package com.yf.designpattern.factorymethod;public interface Car { public void drive();}[/code]具...2012-06-10 23:34:49 · 78 阅读 · 0 评论 -
设计模式之代理模式
现在有这样一种场景,有个管理员,管理员可以可以进行某些操作,但是这个管理员不可更改,现在想在每次管理员做这些操作的时候,都记录一下时间。这些记录时间操作对原来的才做不能有任何影响。为了解决这种问题,我们必须给管理员创建一个代理(管理员不可修改),这个代理可以做管理员做的所有事情,同时做的时候还可以记录时间。这种解决方案就可以称之为“代理模式”下面就用简单的代码实现一下上面的逻辑首先定义管理...2012-06-14 23:09:14 · 48 阅读 · 0 评论 -
设计模式之动态代理
之前写了一篇代理模式的文章,同时介绍了使用代理模式的好处,但是那种代理模式也存在一定的弊端:代理类和被代理类紧紧的耦合在一起了,一个代理类只能为一个代理类服务。这种显然是不愿意看到的,下面用一个例子介绍一下Java的动态代理和深入分析一下Java的动态代理。被代理对象接口[code="java"]package com.yf.designpattern.proxy.dynamicpro...原创 2012-06-16 17:32:55 · 64 阅读 · 0 评论 -
不用Spring也能实现Ioc
Spring两个主要功能:Ico和Aop,而Ico又是两个中较为重要的,关于什么是Ioc,这里就不多讲了,网络上都说烂了,这里主要给出一个示例,该示例调用者无需关心被调用者的实例化问题,由被调用者自身解决,实现调用者和被调用者之间的解耦,同时还要求被调用者保证其实例线程安全的单例,其实代码很简单,还是看代码和注释吧[code="java"]package com.yf.ioc;...2012-10-06 23:30:41 · 187 阅读 · 0 评论