OC中只要繼承了NSObject的,都要進行內存管理;在談單個對象內存管理的時候須要明白幾個概念。指針
第一個:計數器;新建一個對象,計數器就爲1,使用retain,計數器就加一,使用release,計數器就減一,有一個叫retainCount,經過它查詢當前的計數器,有時候是不許確的,驗證也是比較簡單,將計數器減小爲0,重寫delloc方法,將retainCount的值打印出來,作比較就能夠。對象
第二個:野指針;當一個對象被釋放的時候,原先的指針還指向這個對象的時候叫野指針,這個對象又被叫作殭屍對象(zombie);野指針訪問殭屍對象時會報錯;提供一個可行的解決的方式:空指針,將nil賦值給野指針。繼承
明白前兩點裏面的一些概念,對於單個對象釋放內存,即將計數器的值清爲0,因此,有一個retain,就要一個release。內存
若有錯誤,歡迎指出。內存管理