1.浅拷贝:如果拷贝的时候,只是拷贝了一份引用,指向相同的对象,改变其中任意一个,都会发生改变,就是浅拷贝
深拷贝:如果拷贝的时候,拷贝的是值类型数据,那么仅仅是拷贝值,重新复制了一份出来,改变复制出来的那份,和原来拷贝的那份没有任何的关系,这就是深拷贝
程序演示过程:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 深拷贝与浅拷贝
{
class Program
{
static void Main(string[] args)
{
Person p1 = new Person()
{
Name="w1111j"
,Age=12
};
Person p2 = p1;//浅拷贝,只是复制了一个和p1一样的引用,指向和p1相同的对象
Person p3 = new Person();
p3.Name = p1.Name;//深拷贝(值类型)
p3.Age = 3;
Console.WriteLine(p1.Name+""+p1.Age+""+p2.Age+p2.Name+""+p3.Name+""+p3.Age);
Console.ReadKey();
}
}
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
}
---本博客是学习以后记录知识,如有侵权,请联系删除!!!