一张图说明深拷贝,浅拷贝,strong,weak,指针概念

一张图说明深拷贝,浅拷贝,strong,weak,指针概念_第1张图片

if(obj == obj1)//比较这两个指针里面的对象地址

isEqual: 默认情况下是比较两个对象的内存地址,但是有一些系统自带的类(比如Foundation中的NSString,NSArray等)重写了这个方法,改变了这个方法的判断规则(一般改为比较两个对象的内容,不是内存地址)。

对象地址也是指针。

补充一下:浅拷贝就是拷贝指针,并没有创建新的对象;深拷贝就是重建了一个新的对象,这个新对象的内容和被拷贝的对象内容一样。

copy 拷贝的都是不可变的,mutableCopy 拷贝的都是可变的,

你可能感兴趣的:(一张图说明深拷贝,浅拷贝,strong,weak,指针概念)