一,你可以使用不同的方法复制对象。大多数对象都引用(即指向)其它对象。

二,浅层复制,不复制引用对象,新复制的对象只指向现有的引用对象。NSArray类的copy方法是浅层复制。当复制一个NSArray类的对象时,你复制的对象只复制指向引用对象的指针,而不复制引用对象本身。如果复制一个NSArray类的对象,该对象包含5个NSString类的对象,则你最终得到的是5个可供程序使用的字符串对象,而不是10个字符串对象。如果那样的话,每个新对象最终获得一个指向一个字符串对象的指针。

三,深层复制,将复制所有的引用对象。如果NSArray的copy方法是深层复制,则在复制操作完成以后你将得到10个可用的字符串对象。

四,你可以根据特定的类的需要,自由混搭深层复制和浅层复制你的给合对象。