今天来学习一下原型模式,也是一个简单而常用的。他是用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.原型模式有不同的两种处理方法:对象的浅拷贝和深拷贝。
浅拷贝是指将对象中的数值类型的字段拷贝到新的对象中,而对象中的引用型字段则只复制它的一个引用到目标对象,而深拷贝将会在新对象中创建一个新的和原对象中对应字段相同(内容相同)的字段。一个是复制引用,一个是创建新对象。
Java中的提供clone()方法来实现对象的克隆,所以原型模式实现变得很简单.flex也一样,
as代码
这就是原型模式的应用,还有很多应用采用了原型,改天补上,待续。(欢迎各位大哥拍砖并提出不足之处)
浅拷贝是指将对象中的数值类型的字段拷贝到新的对象中,而对象中的引用型字段则只复制它的一个引用到目标对象,而深拷贝将会在新对象中创建一个新的和原对象中对应字段相同(内容相同)的字段。一个是复制引用,一个是创建新对象。
Java中的提供clone()方法来实现对象的克隆,所以原型模式实现变得很简单.flex也一样,
as代码
import flash.events.Event;
public class UserEvents extends Event
{
.....
public function UserEvents(type:String)
{
super(type,true);
}
override public function clone():Event
{
return new UserEvents(type);
}
}
这就是原型模式的应用,还有很多应用采用了原型,改天补上,待续。(欢迎各位大哥拍砖并提出不足之处)