:)----设计模式学习笔记------1
zgpp 2002-07-11 03:06:12 本人刚开始学习设计模式,看的是英文的Java版。这里是自己的一些心得,可不知道自己理解是否有偏差,希望高手指点!内容会继续添加!
1. Bridge:定义一个类A,在A中定义可能生成的类型b和c,然后通过传给A构建器的参数之一——类型b或c来决定生成类实例B或C。然后通过组织类B和C的实例来实现界面表现。B和C是具体的组件单元类。这样修改A不会影响B、C,修改B、C也不会影响A。
2. adapter:假如你要实现的类,可能具有多个接口或类的功能操作,而这些操作只是这些接口或类中的一部分。那么就定义一个接口,接口内定义这部分方法,然后定义你要实现的类来实现该接口,在类中仅需定义接口方法的实现。这样原来不兼容的类和接口可以通过你定义的接口来一起工作。
3. Factory:你设计一个基类B,它定义了该类的一些操作和允许子类访问的一些变量。因为该类所操作的对象有不同的表现方式(形式),需要针对不同的方式(形式)定义该基类的不同子类Si。然后定义一个工厂类,该类负责分析基类操作对象的表现方式(形式),以生成不同的子类。假如该工厂类实例是f,则在程序中调用的方式是:B = f.getBClass(操作对象)(getBClass方法返回的是Si)。
4. SingLeton:在类中定义一个静态开关变量,来控制是否可以生成实例。当一个实例生成时,该变量被置为False,当实例被删除时,该变量被置为True。在具体实现的时候最好抛出自己的异常:不可以生成实例时抛出。在调用new试图生成实例时使用Try……Catch块。