原型模式——.Net 中深拷贝简单代码实现
[Serializable]
public class User
{
public string Name { get; set; }
public string Password { get; set; }
public object Clone()
{
//深拷贝
//1.中间流
MemoryStream memoryStream = new MemoryStream();
//序列化类
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(memoryStream,this);
//设置流读取的位置
memoryStream.Position = 0;
return binaryFormatter.Deserialize(memoryStream);
}
}
浙公网安备 33010602011771号