1.set方法記憶體管理相關的引數
* retain : release舊值,retain新值(適用於oc物件型別)
* assign : 直接賦值(預設,適用於非oc物件型別)
* copy : release舊值,copy新值
2.是否要生成set方法
* readwrite : 同時生成setter和getter的宣告、實現(預設)
* readonly : 只會生成getter的宣告、實現
3.多執行緒管理
* nonatomic : 效能高(一般就用這個)
* atomic : 效能低(預設)
4.setter和getter方法的名稱
* setter : 決定了set方法的名稱,一定要有個冒號 :
*getter : 決定了get方法的名稱(一般用在bool型別)
@property book *book // 這個語句是直接賦值的,不會有retain
@property (retain) book *book // 生成的set語句會有retain的,相當於
- (void)setbook : (book *)book
}// 當然,如果property中又retain ,則實現中需要實現dealloc語句
- (void)dealloc
1.@class的作用:僅僅告訴編譯器,某個名稱是乙個類
@class person; // 僅僅告訴編譯器,person是乙個類
2.開發中引用乙個類的規範
1> 在.h檔案中用@class來宣告類
2> 在.m檔案中用#import來包含類的所有東西
3.兩端迴圈引用解決方案
1> 一端用retain
2> 一端用assign
記憶體管理範圍和 property
管理範圍 管理任何繼承nsobject的物件,對其他的基本資料型別無 效 本質原因是因為物件和其他資料型別在系統中的儲存空間不一樣,其它區域性變數主要存放於 棧中,而物件儲存於堆中,當 塊結束時這個 塊中涉及的所有區域性變數會被 指 向物件的指標也被 此時物件已經沒有指標指向,但依然存在於記憶體中,...
第四天 記憶體管理 property引數
1.通常引用乙個類有兩種方法 1,通過 import方法引入 2.通過 class引入 import和 class的區別 import b.h inte ce a nsobject end 1.import方式會包含被引用類的所有資訊,包括被引用類的變數和方法。class方式只是告訴編譯器在a.h檔...
記憶體管理 記憶體管理概述
儲存器的發展方向是高速 大容量和小體積,即儲存器嘗試更高讀寫速度,更大儲存容量,更小物理體積。在計算機中,常見的儲存器有 暫存器,快取,記憶體,硬碟,一般硬碟之類的輔助儲存器又稱外存。在平均讀寫速度上,有 暫存器 快取 記憶體 外存 在單位容量 上,有 外存 記憶體 快取 暫存器 cpu處理器只能直...