实现思想: 对象-〉序列化-〉二进制流-〉反序列化-〉新的对象
DotNet 代码:
public static Object DeepClone(Object srcObject)
{
//定义内存流
MemoryStream ms=new MemoryStream();
//定义二进制流
IFormatter bf=new BinaryFormatter();
//序列化
bf.Serialize(ms,srcObject);
//重置指针到起始位置,以备反序列化
ms.Position=0;
//返回反序列化的深克隆对象
return bf.Deserialize(ms);
}