我工作的那点事--学习《设计模式》实例应用(Prototype模式)

这个模式比较好理解,应用也比较广泛的,说白了就是将别的东西copy一份过来,以后在复件上的修改和原件没有什么关系。[@more@]jdon对Prototype的定义是这样的:

用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。

我就不加多解释了,举个工作中的例子吧,这样比较形象 也容易理解:

要开会了,肯定有些比较重要的文件 大家都要进行阅读,原件只有一份不可能每个人都在上面做笔记,解决的方法就是: 当然是复印了,每个人手一份,随便你怎么涂鸦:)

1.原件:

public class ImportantDoc implements Cloneable
{

   String docName;
String docContext;

  public void setDocName(String name) {this.docName = name;}
   public String getDocName() {return this.docName;}

  public void setDocContext(String context) {this.docContext = context;}
   public String getDocContext() {return this.docContext;}

   public Object clone()
   {
    Object object = null;
    try {
      object = super.clone();
    } catch (CloneNotSupportedException exception) {
      System.err.println("ImportantDoc is not Cloneable");
    }
    return object;
  }
}

就这么简单,哈哈,现在你可以随便复印了。

ImportantDoc doc1 = new ImportantDoc();
ImportantDoc doc2 = new ImportantDoc();
ImportantDoc doc3 = new ImportantDoc();
ImportantDoc doc4 = new ImportantDoc();
………………

我这边只是简单的讲述,比较深入的可以阅读:

《JAVA中的指针,引用及对象的clone》: http://www-128.ibm.com/developerworks/cn/java/l-jpointer/index.html

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9879276/viewspace-983116/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/9879276/viewspace-983116/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值