码迷,mamicode.com
首页 > 编程语言 > 详细

java设计模式--创建模式--原型模式

时间:2014-08-01 15:35:51      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   java   io   ar   div   new   

									原型模式
 概述
    用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
    
 适用性
    1.当一个系统应该独立于它的产品创建、构成和表示时。

    2.当要实例化的类是在运行时刻指定时,例如,通过动态装载。

    3.为了避免创建一个与产品类层次平行的工厂类层次时。

    4.当一个类的实例只能有几个不同状态组合中的一种时。

    建立相应数目的原型并克隆它们可能比每次用合适的状态手工实例化该类更方便一些。
    
参与者
    1. Prototype
       声明一个克隆自身的接口。

    2. ConcretePrototype
       实现一个克隆自身的操作。

    3. Client
       让一个原型克隆自身从而创建一个新的对象。

  

 1 /**
 2  * 声明一个克隆自身的接口
 3  * @author 
 4  *
 5  */
 6 public class Prototype implements Cloneable {
 7 
 8     private String name;
 9     
10     public void setName(String name) {
11         this.name = name;
12     }
13     
14     public String getName() {
15         return this.name;
16     }
17 
18     public Object clone(){
19         try {
20             return super.clone();
21         } catch (Exception e) {
22             e.printStackTrace();
23             return null;
24         }
25     }
26 }
 1 /**
 2  * 实现一个克隆自身的操作
 3  * @author 
 4  *
 5  */
 6 public class ConcretePrototype extends Prototype {
 7 
 8     public ConcretePrototype(String name) {
 9         setName(name);
10     }
11 }

 

1 public class Test {
2 
3     public static void main(String[] args) {
4         Prototype pro = new ConcretePrototype("prototype");
5         Prototype pro2 = (Prototype)pro.clone();
6         System.out.println(pro.getName());
7         System.out.println(pro2.getName());
8     }
9 }

看了一下大神写的,今天理解还是有点模糊,感觉就是克隆,方便建造实例。

 

每天进步,每天学习...

java设计模式--创建模式--原型模式,布布扣,bubuko.com

java设计模式--创建模式--原型模式

标签:style   blog   color   java   io   ar   div   new   

原文地址:http://www.cnblogs.com/huzi007/p/3884994.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!