您的位置:首页 > 其它

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;


浅克隆

值类型复制了值,引用类型复制了引用,引用就是指针、地址,复制引用相当于复制了门牌号,房间内容没复制。

浅克隆

值类型复制了值,引用类型与上面相反。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  设计模式