[模式之集思广义] Prototype pattern

本文详细介绍了原型模式中浅拷贝与深拷贝的区别及应用场景,通过实例分析如DOTA、剑圣、孙悟空等角色的复制过程,深入探讨了对象拷贝与原有对象之间的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Concept

Specify the kinds of objects to create using a prototypical instance, and create new objects by copying this prototype. - Gof

2.QA

Clone    浅拷贝,复制值类型,不复制引用类型;引用indicate the same object.==
Copy    深拷贝,值类型与引用类型都做复制; Use the Serialization to deep copy the Object.

 

原型模式创造出的对象拷贝与原有对象存在以下关系。

1、原对象 != 新对象拷贝

2、原对象.equals(新对象拷贝) = true(前提是添加了适当的equals方法)

3、原对象.getClass().equals(新对象拷贝.getClass())

 

 

3.Good example.

DOTA, 剑圣,孙悟空。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值