码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式(四)原型模式(Prototype)-创建型

时间:2015-04-27 09:55:06      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:设计模式   prototype   

原型模式Prototype

原型模式也是创建模式的一种,顾名思义,就是创建一个和原来一模一样的新对象。比如日常开发中,常用到的复制的功能,用户新建一个财务凭证后,以后会有类似的凭证,只是金额需要修改,其它内容都相同。此时用户就没有必要重新将凭证的内容一个一个地输入到界面上,只需要执行复制功能,即可生成一张新的一模一样的凭证,然后新的凭证上只修改金额即可,这时就使用原型模式。

说明:Java对象赋值是地址传值,修改赋值后的实例会修改原来实例的属性值;我们需要的是复制后修改但不修改原来的实例的属性值。

原型模式示意图

技术分享

方法:实现Java中的Cloneable类

implements Cloneable

public Object clone(){
	Object obj = null;
	try{
		obj = super.clone();
	} catch(CloneNotSupportException ex){
		System.out.println(ex);
	}
	return ojb;
}

客户端调用:

Product p = new Product();
p.setNum(111);
p.setPrice(14);
p.setRebate(20);
Product p1 = (Product) p.clone();
p1.setNum(200);

我们得到的是,修改后的p1和p的数量不同。




设计模式(四)原型模式(Prototype)-创建型

标签:设计模式   prototype   

原文地址:http://blog.csdn.net/dream_angel_z/article/details/45292989

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