51CTO是一個很是全面的平臺,是一個很是不錯的學習平臺,由於我藉助於這一平臺來分享一些平時積累的課程介紹,那麼緊接着本章內容整理出來的是有關OC屬性的介紹。安全
1、屬性做用多線程
藍鷗iOS培訓推薦:若是想要很方便的建立setter和getter方法,那麼能夠利用聲明屬性(@property)來實現。ide
@property聲明與實現文件中的另外一個聲明@sythesize相結合,完成setter和getter方法的建立。@property生成設置器和訪問器方法的聲明,@synthesize生成設置器和訪問器方法的實現。函數
那麼在這裏你們所要注意的就是:只有當訪問器不存在的時候,@synthesize纔會自動生成訪問器,因此,即便是使用@synthesize聲明瞭一個屬性,仍然能夠實現自定義的getter和setter。學習
屬性是設置實例變量的方法,也是獲取實例變量的方法。atom
2、點語法訪問spa
aObject.aVar=aValue;左邊至關於一個設置器方法。線程
NSString*str=aObject.aVar;右邊至關於一個訪問器方法。對象
省去了使用實例變量訪問方法。blog
3、屬性說明的功能
一、訪問控制
readwrite說明了屬性是可讀寫的。
readonly說明屬性是隻讀的,也就是隻會生成訪問器
getter=函數名爲屬性訪問器指定函數
setter=函數名爲屬性設置器指定函數
二、線程安全
nonatomic非原子性,不保證多線程安全。不設置這個參數,就說明對屬性的訪問在多線程環境下是可靠的。
atomic原子性,多線程訪問時較安全(系統沒這個關鍵字)
三、設置器邏輯控制
設置器邏輯控制參數指定了設置器中的邏輯方式。
四、assign
設置器使用直接賦值來設置屬性的值:property=newValue;它是默認的參數,若是不寫,默認是assign。
五、retain
在進行設置的時候使用retain,對原值進行release
這個參數只針對於NSCoping協議的對象生效。
上面內容簡單明瞭的寫下了OC屬性,這樣理解起來就很簡單了,那麼做爲iOS開發的興趣愛好者,你有沒有學好OC呢?有沒有愈來愈喜歡上iOS培訓的各類課程呢?有的話,立刻行動起來吧!