原型模式

原创 2015年11月19日 17:29:31

原型模式

      原型模式通过给出一个原型对象来指明所要创建对象的类型,然后通过复制这个原型对象的办法建出更多同类型的对象。

      工作原理:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象复制原型自己来实现创建过程。

原型模式结构图:


Prototype表示抽象原型类,它定义具有克隆自己的方法的接口

ConcreteProductA,ConcreteProductB表示具体的原型类,实现了具体的克隆方法

Client表示客户类,让原型对象克隆自身从而创建一个新的对象


原型模式之快速创建工作周报:

具体原型类:

package ConcreteProduct;

public class WeekyLog implements Cloneable {

	private String name;
	private String date;
	private String contetn;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getDate() {
		return date;
	}
	public void setDate(String date) {
		this.date = date;
	}
	public String getContetn() {
		return contetn;
	}
	public void setContetn(String contetn) {
		this.contetn = contetn;
	}
   public Object clone(){
	   Object obj=null;
	   try {
		obj=super.clone();
		return obj;
	} catch (CloneNotSupportedException e) {
		System.out.println("不能复制");
		return null;
	} 
   }	

}
客户端:
package Client;

import ConcreteProduct.WeekyLog;

public class client {
	public static void main(String args[]){
		WeekyLog log_previous=new WeekyLog();
		log_previous.setName("张三");
		log_previous.setDate("2015年第一周");
		log_previous.setContetn("这周很忙");
		
		System.out.println("****周报****");
		System.out.println(log_previous.getName());
		System.out.println(log_previous.getDate());
		System.out.println(log_previous.getContetn());
		
		WeekyLog log_now;
		log_now=(WeekyLog)log_previous.clone();
		log_now.setDate("2015年第二周");
		
		System.out.println("****周报****");
		System.out.println(log_previous.getName());
		System.out.println(log_previous.getDate());
		System.out.println(log_previous.getContetn());
		
	}
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

原型模式示例

  • 2016-12-22 14:24
  • 3.19MB
  • 下载

第八章原型模式

  • 2012-09-27 10:23
  • 1.19MB
  • 下载

原型模式

原型模式 故名思议是依赖于原型,创建一个和原来一模一样的新对象。 原型模式的使用:如印刷厂钞票的复印,钞票的复印只需要一个钞票的原型,根据这个原型可以复印出很多一样的钞票。在Java中,由于Jav...

实验六:原型模式.rar

  • 2011-05-26 16:16
  • 30KB
  • 下载

prototype原型模式

  • 2017-01-17 11:14
  • 763KB
  • 下载

原型模式(Prototype)

原型模式的要点: 1.如果通过new去产生一个对象需要非常繁琐的数据准备和访问权限,则可以使用原型模式; 2.其实原型模式就是java中的克隆技术,以某个对象为原型,复制出新的对象。显然,新的对象...

原型模式实践代码

  • 2016-03-23 23:04
  • 5.94MB
  • 下载

Java原型模式

五、Prototype 原型模式(创建型)

五、Prototype 原型模式(创建型) 1、意图:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 2、场景:游戏场景中的有很多相似的敌人,它们的技能都一样,但是随着敌人出现的...

java 原型模式

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)