OC @property聲明全局變量

以前我介紹了set和get方法,但在實際操做時,咱們會發現重複的代碼量太大,若是有幾十個成員變量要聲明,那麼就要對應有幾十個set和get方法,爲了免去手工書寫set和get方法繁瑣的代碼,人民的英雄@property應運而生。xcode

@property是編譯器的指令,那麼什麼是編譯器的指令呢?其實就是去告訴編譯器要作什麼啦~安全

@property 告訴編譯聲明實現set、get方法atom

這裏出現了陌生的標識符 .net

咱們簡單的介紹一下code

nonatomic 表明着線路安全對象

在手機還只有512M內存時,若是對屬性加鎖,那麼手機運行速度就會變得很是慢,因此對屬性通常都是不加鎖的,這樣的速度相對快不少,這個習慣延續到了今天。內存

strong和weak 表明內存管理。字符串

直接賦值的如int double等,直接寫成get

@property (nonatomic)int age;編譯器

而對象(字符串)要用strong做爲參數。

這樣是否是方便不少了呢?

其實在xcode早期版本,@property只是聲明set和get方法,實現它們還須要另外一個指令@synthesize

可是@synthesize 已經消失在滾滾oc長河當中,當作瞭解就好。 

相關文章
相關標籤/搜索