IOS Objective-C屬性解析

1.atomic 和 nonatomic 關(guān)系

atomic: 是原子操作,表示不能再繼續(xù)分,用于多線程操作,因?yàn)槭窃硬僮鳎婕氨容^多的上鎖,解鎖,所以性能比較差。
nonatomic: 非原子操作,系統(tǒng)默認(rèn)就是這個(gè)屬性。

2.readwrite 和readonly

readwrite: 是默認(rèn)的屬性,表示可以對(duì)對(duì)象進(jìn)行讀和寫(xiě),會(huì)生成對(duì)象相應(yīng)的setter和getter方法。
readonly: 表示只允許讀取對(duì)象的值,只會(huì)生成對(duì)象的getter方法。

3.assign 是默認(rèn)屬性,只可以對(duì)基本數(shù)據(jù)類(lèi)型(如CGFloat,NSInteger,Bool,int,代理對(duì)象)等使用。該方式會(huì)對(duì)對(duì)象直接賦值而不會(huì)進(jìn)行retain操作

4.strong 和 weak
strong: 強(qiáng)引用,默認(rèn)屬性,例如一個(gè)Label屬性,在一個(gè)UIView里面,就是強(qiáng)引用.
weak: 弱引用,指針主要用于“父-子”關(guān)系,父親擁有一個(gè)兒子的strong指針,因此父親是兒子的所有者;但為了阻止所有權(quán)循環(huán)(循環(huán)引用),兒子需要使用weak指針指向父親。
典型例子是delegate模式,你的ViewController通過(guò)strong指針(self.view)擁有一個(gè)UITableView, UITableView的dataSource和delegate都是weak指針,指向你的ViewController

5.copy
一般NSMutableString 那種可變的都用copy,因?yàn)閏opy會(huì)深拷貝,如果原來(lái)的值變了的話,copy屬性不會(huì)收到影響。這就是用copy的場(chǎng)景,馬德終于搞清楚了。下面總結(jié)比較全面。
http://blog.csdn.net/runintolove/article/details/50767523

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 接著上節(jié) mutex,本節(jié)主要介紹atomic的內(nèi)容,練習(xí)代碼地址。本文參考http://www.cplusplu...
    jorion閱讀 73,841評(píng)論 1 14
  • 測(cè)試de藝術(shù) 最近開(kāi)始整理內(nèi)容了,把值錢(qián)的東西梳理一下,別浪費(fèi)。 敏捷測(cè)試的策略: 1、敏捷測(cè)試不是每次迭代都要測(cè)...
    Black13eard閱讀 238評(píng)論 0 1
  • 餐館滿座了,男生看著暗戀的姑娘坐到自己對(duì)面,連忙紅著臉低下頭,心里祈禱她能吃慢一點(diǎn)。旁邊的小服務(wù)員看在眼里,不動(dòng)聲...
    洞庭府君閱讀 520評(píng)論 1 9
  • 時(shí)曉偉(石船先生) 21、守在師父家,就為一句話。 推窗望月難見(jiàn)月,開(kāi)門(mén)見(jiàn)山不是山。 為啥? 一一《石船先生.破禪...
    石船先生的醬湯閱讀 225評(píng)論 0 0
  • 導(dǎo) 語(yǔ) 不少人覺(jué)得,陳浚生出軌也是遲早的事情。有什么必要,大驚小怪的呢。我就納悶了:陳浚生們,憑什么出軌得這么理直...
    飄雨桐V閱讀 301評(píng)論 0 0