Objective-C中的@property使用[五]
簡介?
Objective-C語言關(guān)鍵詞,與@synthesize配對使用。?
功能:讓編譯器自動編寫一個與數(shù)據(jù)成員同名的方法聲明來省去讀寫方法的聲明。?
如:?
1、在頭文件中:?
等效于在頭文件中聲明2個方法:?
2、實現(xiàn)文件(.m)中?
等效于在實現(xiàn)文件(.m)中實現(xiàn)2個方法。?
以上等效的函數(shù)部分由編譯器自動幫開發(fā)者填充完成,簡化了編碼輸入工作量。?
編輯本段?
格式?
聲明property的語法為:?
@property (參數(shù)1,參數(shù)2) 類型 名字;?
如:?
@property(nonatomic,retain) Variable *variable;?
其中參數(shù)主要分為三類:?
讀寫屬性: (readwrite/readonly)?
setter語意:(assign/retain/copy)?
原子性: (atomicity/nonatomic)?
各參數(shù)意義如下:?
readwrite?
產(chǎn)生setter\getter方法?
readonly?
只產(chǎn)生簡單的getter,沒有setter。?
assign?
默認(rèn)類型,setter方法直接賦值,而不進(jìn)行retain操作?
retain?
setter方法對參數(shù)進(jìn)行release舊值,再retain新值。?
copy?
setter方法進(jìn)行Copy操作,與retain一樣?
nonatomic?
禁止多線程,變量保護(hù),提高性能
總結(jié)
以上是生活随笔為你收集整理的Objective-C中的@property使用[五]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle中的NVL,NVL2,NUL
- 下一篇: 安卓动态增加按钮