今天簡述一下簡單的內存管理,在IOS5.0之後Apple增長了ARC機制(Automatic Reference Counting),給開發人員帶來了很多的方便,可是爲了能更好的理解IOS內存管理機制,仍是須要對其比較瞭解。編程
1.在OC中,每一個對象都有一個保留計數,建立時每一個對象都有一個初始值爲1的保留計數,釋放時,保留計數都爲0對象
2.建立自動釋放的對象生命週期
要求以一個方法建立對象時,以自動釋放的形式返回該對象是一個很好的編程實踐內存
+(Car *)car開發
{get
Car *myCar = [[Car alloc] init];it
return [myCar autorelease];內存管理
}微博
3.建立已保留屬性class
@property (retain)NSArray *colors;
synthesize建立後,自動保留該對象,若是該對象被從新賦值,前面的值將被自動釋放
4.建立對象的其餘方式
通常規則:經過alloc、new、create、copy的任意方法構建一個對象,就必須承擔釋放該對象的責任,和類方法不一樣,帶這些字樣的方法通常不會返回自動釋放的對象
5.釋放對象
釋放屬性:self.year = nil;會調用OC合成的自定義賦值方法,並釋放之前賦值給該屬性的任意對象
釋放實例變量(非屬性):[age release]; 實例變量在對象生命週期內,隨時能夠指向一個保留計數+1的對象,必須釋放當前賦值給age的任意對象,從而將計數置爲0;
對Android&IOS感興趣的朋友能夠加入咱們的討論QQ羣,在這裏,咱們只討論乾貨:
iOS羣:220223507
Android羣:282552849
歡迎關注個人新浪微博和我交流:@唐韌_Ryan