克隆分为:浅克隆和深克隆
浅克隆:
调用Clone方法实现
只是多出一份引用,值还是只有一份,修改克隆出来的对象或原对象都会相互影响
深克隆:
须要克隆的类须实现ICloneable接口的Clone方法:在Clone方法中使用new来创建本身的一个新对象,然后对象调用Clone方法实现克隆
多出一份全新的引用和值,修改克隆出来的对象或原对象都不会相互影响
注意数组要实现深克隆一般使用for循环实现,如:
DBParameter[] tempParams = new DBParameter[Parms.Length];
for (int i =0;i<Parms.Length;i++)
{
tempParams[i] = Parms[i].Clone() as DBParameter; //DBParameter类实现了ICloneable接口
}