hjr-设计模式:原型模式
2017-01-25 00:17
197 查看
原型模式
使用对象克隆代替重新创建对象,一般语言自带clone功能。
如存在类A,需要例化多个A的对象:
//不用原型模式 A a1 = new A(); A a2 = new A(); //使用原型模式 A ai = new A(); A a2 = a1.clone();
由上可见,原型模式隐藏了对象创建细节并避免了多次
new即多次执行构造函数,优化了性能。
限制
直接在内存中复制数据,因此不会调用到类的构造方法,克隆的对象构造函数不会改变即初始化的信息固定了,其余属性和方法可以进行更改克隆方式
tips: 值类型:如int a = 0;,string a = null;...... 引用类型:如Student sd = null;
浅克隆
值类型复制了值,引用类型复制了引用,引用就是指针、地址,复制引用相当于复制了门牌号,房间内容没复制。浅克隆
值类型复制了值,引用类型与上面相反。相关文章推荐
- 设计模式学习笔记(六)——Prototype原型模式
- 设计模式学习笔记(四)——Prototype原型
- 设计模式就是来解决应变---原型(prototype)
- 设计模式与泡mm的关系之Prototype原型模式及原型模式的再思考
- 设计模式学习笔记(六)——Prototype原型模式
- 设计模式之Prototype(原型)
- (创建模式)设计模式之Prototype(原型)
- 设计模式原型模式(Prototype)- 面馆里的菜单
- 设计模式之Prototype原型设计模式
- 设计模式之原型法(ProtoType)----对象创建型模式
- 设计模式原型模式(Prototype)- 面馆里的菜单
- 设计模式袖珍版 连续转载之 - Prototype(原型)
- C#设计模式之原型(ProtoType)
- C#设计模式之原型(ProtoType)
- 设计模式原型模式(Prototype)- 面馆里的菜单
- 设计模式之Prototype(原型)
- C#设计模式之原型(ProtoType)
- 设计模式之Prototype(原型)
- 设计模式(3)-原型模式(Prototype)
- 设计模式(5)-原型模式(Prototype)