设计模式
kent4j
这个作者很懒,什么都没留下…
展开
-
Java中Builder模式的使用
今天在上课的时候老师给我们讲解了一下如何使用Builder来减少类的构造器重载,以及如何使用Builder来缓存常用对象的。Part I首先我们来看看以下一段代码: 1:import java.util.Date; 2: 3:publicclass Customer { 4: 5:private String name; 6:private Boolean gender; 7:private Date birth; 8:private Double salary; 9原创 2010-06-30 19:25:00 · 2425 阅读 · 1 评论 -
Java观察者模式 java.util.Observable 与 java.util.Observer 的理解
Part I JDK1.2后,Java提供了对观察者模式的支持接口和实现类。 其中接口 java.util.Observer 用来指定观察者,观察者必须实现 void update(Observable o, Object arg) 方法。 而 java.util.Observable 用来指定观察物(被观察者、可被观察的),并且提供了一系列的方法。读者可以很轻易的使用这个接口和实现类来实现观察者模式。 Part II java.util.Observer 只有一个简单的方法 void up原创 2010-07-10 16:10:00 · 16710 阅读 · 14 评论 -
又一次闲来无聊,使用Java的动态代理机制来模拟AOP
面向切面编程(AOP)实现了从另一个层面解决了面向对象所不能解决的对象间耦合度问题。今天闲来无聊做了个模拟AOP的小例子,有不完善的地方请指出。 首先我们定义一个接口和实现类 package com.gzmu.dynamic.proxy.service;import java.io.Serializable;import com.gzmu.dynamic.proxy.po.User;public interface UserService { void saveUser(User u原创 2010-07-10 19:23:00 · 1243 阅读 · 0 评论 -
[原创] State Pattern 状态模式的介绍与应用
Part I 什么是状态模式 状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类 -- 《Head First – Designer Pattern》译本 Part II 状态模式与策略模式的关系 策略模式强调的是对算法的抽象与封装,而状态模式则侧重于当对象内部状态改变时所引起的对象行为的改变! 虽然两种模式的形式和使用上相类似,但是他们所处理的问题是不一样的。 Part III 解决吃饭-工作问题 首先让我们模拟一个场景: 1. 有一个Person的对象;原创 2010-09-22 01:30:00 · 1316 阅读 · 1 评论