摘要: 装饰模式Decorator动态地给一个对象增加额外的职责,就增加功能来说,装饰模式比生成子类更灵活。装饰模式视为已经有的功能动态地添加多更多的功能的一种方式。它把要装饰的功能单独封装在一个类里面,并让这个类封装它要装饰的对象,这样就可以为原有的对象增加新的功能,从而不会因为功能的扩展增加了竹类的复杂度。当需要执行特殊行为时,用户可以选择的使用装饰功能包含的对象。有效的把类的核心职责和装饰功能分开,除掉了类中重复的装饰修饰。package decorator.pattern; public class DecoratorPattern { /** * @param args */ ... 阅读全文
posted @ 2012-08-15 16:49 Leeforall 阅读(138) 评论(0) 推荐(0)
摘要: 备忘录模式Memento在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样可以将该对象恢复到原先保存的状态。Memento模式可以把复杂的对象内部信息对其他的对象屏蔽起来。把保存的细节封装在Memento中,要跟该保存的的细节不会影响客户端。Memento 模式比较适用于功能复杂的,但需要维护或记录属性历史的类,或者要保存属性只是众多属性的一小部分,Originator可以根据保存的Memento信息还原到前一状态。命令模式需要实现撤销功能,那么可以使用备忘录模式保存这些可撤销操作的状态。package memento.pattern; public class. 阅读全文
posted @ 2012-08-15 15:43 Leeforall 阅读(167) 评论(0) 推荐(0)
摘要: 组合模式Composite将对象组合成熟形结构已表示整体和部分的层次结构,用户对单个对象和组合对象的使用具有一致性。需求中体现部分和整体的层次结构,并且希望用户可以忽略组合对象和单个对象的不同,统一使用组合结构的所有对象(具有一致性),就应该考虑组合模式。组合模式让用户可以一致的使用组合结构和单个对象,不用判断到底是在处理一个叶结点还是处理一个组合节点,也不用为定义组合而写一些选择判断语句。package composite.pattern; public class CompositePattern { /** * @param args */ public static v... 阅读全文
posted @ 2012-08-15 14:30 Leeforall 阅读(145) 评论(0) 推荐(0)
摘要: 桥接模式Bridge Pattern组合关系(实心菱形):强的拥有关系,体现了严格的整体和部分的关系,部分和整体的生命周期相同。聚合关系(空心菱形):弱的拥有关系,A对象可以包含B对象,B对象不是A对象的一部分。桥接模式Bridge Pattern,将抽象部分和它的实现部分分离,使它们都可以独立的变化。实现系统多角度分类,让他们能够独立变化,降低了耦合度package bridge.pattern; public interface Implementor { public void Operation(); } package bridge.pattern; public cla... 阅读全文
posted @ 2012-08-15 11:05 Leeforall 阅读(135) 评论(0) 推荐(0)
摘要: 迭代器模式Iterator提供一种方法顺序访问一个聚合对象中的各个元素,又不暴露该对象的内部表示。当需要访问一个聚合对象,并且不管这些对象什么时候需要遍历,就应该考虑使用迭代器模式package iterator.pattern; public class IteratorPattern { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ConcreteAggregate aggreagate = new Concrete... 阅读全文
posted @ 2012-08-15 10:59 Leeforall 阅读(133) 评论(0) 推荐(0)
摘要: Java 里面实现Prototype使用Cloneable接口package prototype.pattern; import java.util.Date; /** * * @author Real H LI * */ public class Prototype implements Cloneable { private Date date; private String dateStr; private String ID; public Prototype(){ this.date=new Date(); this.dateStr=date.to... 阅读全文
posted @ 2012-08-14 18:10 Leeforall 阅读(139) 评论(0) 推荐(0)
摘要: 适配器模式Adapter将一个类的接口转换成用户希望的另外一个接口。适配器模式主要应用于希望复用一些现存的类,但是接口又与复用的环境要求不一样的情况。package adapter.pattern; /** * * @author Real H LI * */ public class Existed { public void OldRequest(){ System.out.println("Existed Interface"); } } package adapter.pattern; /** * * @author Real H LI * */ pu... 阅读全文
posted @ 2012-08-14 17:32 Leeforall 阅读(127) 评论(0) 推荐(0)
摘要: Observer Pattern 观察者模式观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某个主题对象。主题对象发生状态变化时,会通知所有观察着,使它们能够更新自己。当一个对象发生改变时,要同时改变其他对象,就用观察着模式package observater.pattern; public class ObserverPattern { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ConcreteSu... 阅读全文
posted @ 2012-08-14 16:50 Leeforall 阅读(160) 评论(0) 推荐(0)
摘要: 单例模式Singleton构造函数定义为private的作用是阻止类在外部被实例化。定义显式构造函数则默认的构造函数会失效。保证一个类仅有一个实例,并提供一个访问它的全局访问点。(定义一个静态方法)package singleton.pattern; public class Singleton { private static Singleton instance; /** * 私有化构造函数 */ private Singleton() { } /** * 单线程下的单例 * * @return */ public static Single... 阅读全文
posted @ 2012-08-14 14:35 Leeforall 阅读(163) 评论(0) 推荐(0)
摘要: 课程设计的实验文档,简单模拟linux文件系统的结构并作简单实现实验概述【实验目的及要求】通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及内部实现。【实验原理】1. 通过对课本第四章文件系统的理解,分析了Unix系统的文件系统的实现原理2. 对linux c提供的文件系统的操作函数的数据结构,函数功能进行分析3. 将课本P181 图4-35的图进行代码实现4. 在linux环境下进行实践,熟悉ls –all 列目录,创建目录,linux c编程【实验环境】Linux UbuntuVMware 虚拟机Window 7 操作系统Eclipse C/C++ IDE实验内容【实验方案设计 阅读全文
posted @ 2012-03-18 18:13 Leeforall 阅读(2614) 评论(2) 推荐(1)