天天看点

iOS开发之对象的生命周期

对象生命周期(Object life cycle)

在OC中一个对象的生命周期就是指,这个对象从创建到销毁的运行时(runtime)的生命。

一个对象的出现有两个途径:

(1)当程序显示的创建并初始化它的时候。

(2)当对象作为另一个对象的副本的时候。

(3)unArchiving的时候,当被要求从已归档的二进制数据流中解码的时候。

(这里要注意,如果一个对象是从一个nib文件中被unArchive的话,在所有的nib文件中的对象都被装载到内存之后,就会收到一个名叫 awakeFromNib 的消息。)

一图顶千言板块:

iOS开发之对象的生命周期

在对象的创建和初始化之后,只要对象的retainCount的值比0大,那么它就会一直存在在内存中。通过想一个对象发送retain消息,或者进行copy操作。其他的对象可以引用并持有该对象的所有权。同时,移除引用的时候要发送release消息。