设计模式笔记7:原型模式
生活随笔
收集整理的這篇文章主要介紹了
设计模式笔记7:原型模式
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.原型模式用處:
·用原型實例指定創(chuàng)建對象的種類,并且通過拷貝這些原型創(chuàng)建新的對象。
?ps:當(dāng)我們需要創(chuàng)建大量相同對象的時候,就可以用原型模式大批量復(fù)制對象。和現(xiàn)實生活中
的復(fù)印機相似,通過一個原型(模板)批量復(fù)制相同的對象;
?
2.深復(fù)制與潛復(fù)制的區(qū)別:
? ? ???復(fù)制需要用到MemberwiseClone()方法;
?
1,淺復(fù)制:如果字段是值類型的,則對該字段進行逐位復(fù)制,如果字段是引用類型,則復(fù)制引用但不復(fù)制引用的對象;因此原始對象和其副本 引用同一對象;
2,深復(fù)制;
? ? 把引用對象的變量指向復(fù)制過來的新對象,而不是原有的被引用的對象;
ps:同是復(fù)制對象,深復(fù)制在復(fù)制引用對象時會為引用生成新的一個對象副本不影響原對象。而淺復(fù)制直接復(fù)制引用;
3.代碼
?Person?
?Program?
?
深復(fù)制核心:對于引用對象調(diào)用其Clone方法創(chuàng)建一個新的副本。如果被復(fù)制對象內(nèi)部含有引用成員也適用這個規(guī)則。?
轉(zhuǎn)載于:https://www.cnblogs.com/yangmingyu/p/6928272.html
總結(jié)
以上是生活随笔為你收集整理的设计模式笔记7:原型模式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux环境下python的部署
- 下一篇: 一款免费好用的代码在线比较工具