# 介绍深拷贝和浅拷贝

* 浅拷贝【指针复制】就是引用计数器加 1 ；【只拷贝指针，不会产生新对象；使用它复制出来的对象，其内容是不可以改变的；】
* 深拷贝【内容复制】就是给新对象开闭内存空间；【会拷贝内容（对象）和产生新对象；会在内存中重新开辟一块区域，将对象复制一份放到这个区域。新对象是可以改变的，而且新对象的改变对源对象是没有影响的；】
* copy 拷贝就是弄个副本出来，使得两个对象直接互不影响，完全独立
* 如果对象可变， copy 就是深拷贝； mutable copy 都是深拷贝。对可变对象复制，都是深拷贝，但是 copy 返回的对象是不可变的（也是深拷贝）
* 如果对象不可变， copy 就是浅拷贝； mutable copy 都是深拷贝。
* 在非集合类对象中：对 immutable 对象进行 copy 操作，是指针复制， mutableCopy 操作时内容复制；对 mutable 对象进行 copy 和 mutableCopy 都是内容复制。
* 在集合类对象中，对 immutable 对象进行 copy ，是指针复制， mutableCopy 是内容复制；对 mutable 对象进行 copy 和 mutableCopy 都是内容复制。但是：集合对象的内容复制仅限于对象本身，对象元素仍然是指针复制。
