设计模式之Prototype(原型)
来源:互联网 发布:lol我的数据查询 编辑:程序博客网 时间:2024/05/01 23:59
设计模式之Prototype(原型)
板桥里人 http://www.jdon.com 2002/05/07
原型模式定义:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.
Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。
如何使用?
因为Java中的提供clone()方法来实现对象的克隆,所以Prototype模式实现一下子变得很简单.
以勺子为例:
public abstract class AbstractSpoon implements Cloneable{
String spoonName;
public void setSpoonName(String spoonName) {this.spoonName = spoonName;}
public String getSpoonName() {return this.spoonName;}
public Object clone()
{
Object object = null;
try {
object = super.clone();
} catch (CloneNotSupportedException exception) {
System.err.println("AbstractSpoon is not Cloneable");
}
return object;
}
}
有个具体实现(ConcretePrototype):
public class SoupSpoon extends AbstractSpoon
{
public SoupSpoon()
{
setSpoonName("Soup Spoon");
}
}
调用Prototype模式很简单:
AbstractSpoon spoon = new SoupSpoon();
AbstractSpoon spoon2 = spoon.clone();
当然也可以结合工厂模式来创建AbstractSpoon实例。
在Java中Prototype模式变成clone()方法的使用,由于Java的纯洁的面向对象特性,使得在Java中使用设计模式变得很自然,两者已经几乎是浑然一体了。这反映在很多模式上,如Interator遍历模式。
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype(原型)
- 设计模式之Prototype原型设计模式
- (创建模式)设计模式之Prototype(原型)
- 设计模式之原型模式(Prototype)
- 设计模式读书笔记之原型模式(Prototype)
- 设计模式之Prototype(原型模式)
- ASCII码
- ASCII码
- 渣打称中国房市出现泡沫 未归还房贷占GDP32%
- 很多上班族都有的毛病,看看你占了几条?
- Win窗体控件的动态添加及其控制问题
- 设计模式之Prototype(原型)
- 浅谈win32的dll中导出类的方法
- Struts框架 Plugin初始化数据
- 渣打称中国房市出现泡沫
- 文件下载
- 30分钟掌握STL
- Struts框架 过滤器doFilter
- Struts框架 ShoppingCart
- errorpage问题