一起学习
适合场合:
1. 当要实例化的类是在运行时刻指定时,例如,通过动态装载;
2. 为了避免创建一个与产品类层次平行的工厂类层次时;
3. 当一个类的实例只能有几个不同状态组合中的一种时。建立相应数目的原型并克隆它们可能比每次用合适的状态手工实例化该类更方便一些。
java 代码
- package created;
-
-
-
- abstract class AbstractPrototype
- {
- public abstract AbstractPrototype cloneYourself();
- }
-
- class MyPrototype extends AbstractPrototype
- {
- public AbstractPrototype cloneYourself()
- {
- try {
- System.out.println("Myprototype clone.");
- return (AbstractPrototype)this.clone();
- } catch (CloneNotSupportedException e) {
- return null;
- }
- }
- }
-
- class YourPrototype extends AbstractPrototype
- {
- public AbstractPrototype cloneYourself()
- {
- try {
- System.out.println("Yourprototype clone.");
- return (AbstractPrototype)this.clone();
- } catch (CloneNotSupportedException e) {
- return null;
- }
- }
- }
-
- class PrototypeSetting
- {
- private AbstractPrototype prototype_;
- public void setPrototype(AbstractPrototype prototype)
- {
- prototype_ = prototype;
- }
- public void method1()
- {
- AbstractPrototype p = prototype_.cloneYourself();
-
- }
- }
-
- public class PrototypeDemo
- {
-
-
-
-
- public static void main(String[] args)
- {
-
- PrototypeSetting p = new PrototypeSetting();
- p.setPrototype(new MyPrototype());
- p.method1();
- }
-
- }
下载本文示例代码
设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型设计模式-对象创建型模式-原型
阅读(144) | 评论(0) | 转发(0) |