欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

IOS開發(fā)之@property的詳細(xì)介紹

 更新時(shí)間:2017年09月12日 11:10:15   作者:番薯大佬  
這篇文章主要介紹了IOS開發(fā)之@property的詳細(xì)介紹的相關(guān)資料,希望通過(guò)本文能幫助到大家,大家理解并會(huì)使用,需要的朋友可以參考下

IOS開發(fā)之@property的詳細(xì)介紹

在類中定義屬性時(shí),總會(huì)使用到@property進(jìn)行定義,下面就來(lái)說(shuō)說(shuō)@property的使用。

在使用過(guò)程中,如果需求公開且在其他類中使用時(shí),通常會(huì)定義在.h頭文件中;而如果只是該類自已需要使用,這時(shí)則會(huì)定義

在.m實(shí)現(xiàn)文件中。

使用格式

@property (參數(shù)1, 參數(shù)2, 參數(shù)3, ...) 參數(shù)類型 參數(shù)名稱

參數(shù)包括三個(gè)種類,七個(gè)屬性,如下圖所示。 

在使用過(guò)程中,有幾點(diǎn)需要注意:

(1)原子性定義中,如果沒有涉及到多線程環(huán)境時(shí),通常不會(huì)使用默認(rèn)值atomic;
(2)讀寫屬性通過(guò)采用默認(rèn)值readwrite;
(3)set方法處理時(shí),需要針對(duì)不同的類型使用參數(shù),而不是全都使用默認(rèn)值;
(4)set方法處理時(shí),對(duì)于非對(duì)象參數(shù)類型,即基本數(shù)據(jù)類型,如int/float/double/BOOL等類型時(shí),采用assign;
(5)set方法處理時(shí),對(duì)于對(duì)象參數(shù)類型,如NSString/NSNumber/NSArray/…/NSDictionary等類型時(shí),采用retain/copy;
(6)在使用過(guò)程中,定義某個(gè)屬性后,系統(tǒng)會(huì)自動(dòng)生成setter/getter方法,但程序員可以根據(jù)需要修改setter/getter方法;
(7)同時(shí)會(huì)生成同名帶下劃線的成員變量,并在setter/getter方法中使用。

如,定義一個(gè)Person類的姓名、年齡:

使用默認(rèn)值進(jìn)行定義

@property age;

相當(dāng)于

@property (atomic, assign) int age;

通過(guò)采用非原子性的,即

@property (nonatomic, assign) int age;

對(duì)象類型的定義不能使用如下方式,因?yàn)樵撔问蕉x時(shí),是直接進(jìn)行賦值,會(huì)造成內(nèi)存泄露。

@property (nonatomic, assign) NSString *name;

正確的方式應(yīng)該使用retain/copy進(jìn)行定義

@property (nonatomic, retain) NSString *name;

默認(rèn)生成的setter/getter方法分別是

- (void)setAge:(int)age;
- (int)age;
- (void)setName:(NSString *)name;
- (NSString *)name;

如果在定義時(shí),重新定義了setter/getter方法,則系統(tǒng)默認(rèn)分成的setter/getter方法則無(wú)效了,使用時(shí),需要調(diào)用新定義的

@property (nonatomic, retain, setter = setMyName:, getter = getMyName) NSString *name;

此時(shí),使用時(shí)setter/getter方法為

- (void)setMyName:(NSString *)myName;
- (NSString *)getMyName;

早期的Xcode版本中,@property 還會(huì)結(jié)合 @systhesize 來(lái)使用才會(huì)生成setter/getter方法,如

@property (nonatomic, assing) int age;
@systhesize age;
// 或
@systhesize age = _age;

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • iOS App設(shè)計(jì)模式開發(fā)中對(duì)interpreter解釋器模式的運(yùn)用

    iOS App設(shè)計(jì)模式開發(fā)中對(duì)interpreter解釋器模式的運(yùn)用

    這篇文章主要介紹了iOS App設(shè)計(jì)模式開發(fā)中對(duì)interpreter解釋器模式的運(yùn)用,示例為傳統(tǒng)的Objective-C寫成,需要的朋友可以參考下
    2016-04-04
  • iOS如何獲取手機(jī)的Mac地址

    iOS如何獲取手機(jī)的Mac地址

    這篇文章主要為大家詳細(xì)介紹了iOS獲取手機(jī)的Mac地址的多種方法,感興趣的小伙伴們可以參考一下
    2016-04-04
  • Objective-C的入門學(xué)習(xí)筆記

    Objective-C的入門學(xué)習(xí)筆記

    Objective-C過(guò)去一直以來(lái)都是iOS應(yīng)用程序開發(fā)的主要支持語(yǔ)言,雖然現(xiàn)在有了Swift,但需要調(diào)用的很多現(xiàn)有類庫(kù)還是Objective-C寫成的,值得學(xué)習(xí),下面一起來(lái)看一下這份粗淺的Objective-C的入門學(xué)習(xí)筆記:
    2016-05-05
  • iOS的HTTP請(qǐng)求和請(qǐng)求回執(zhí)類用法小結(jié)

    iOS的HTTP請(qǐng)求和請(qǐng)求回執(zhí)類用法小結(jié)

    這里為大家整理了iOS的HTTP請(qǐng)求和請(qǐng)求回執(zhí)類用法小結(jié),包括發(fā)送請(qǐng)求的NSURLRequest、NSMutableURLRequest和負(fù)責(zé)回復(fù)的NSURLResponse類的常用方法和屬性,需要的朋友可以參考下
    2016-06-06
  • iOS圖片模糊效果的實(shí)現(xiàn)方法

    iOS圖片模糊效果的實(shí)現(xiàn)方法

    這篇文章主要為大家詳細(xì)介紹了iOS圖片模糊效果的三種實(shí)現(xiàn)方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • iOS10 適配以及Xcode8配置總結(jié)

    iOS10 適配以及Xcode8配置總結(jié)

    這篇文章主要介紹了iOS10 適配以及Xcode8配置總結(jié)的相關(guān)資料,本文通過(guò)圖文并茂的形式給大家介紹,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-09-09
  • iOS利用Runtime實(shí)現(xiàn)友盟頁(yè)面數(shù)據(jù)統(tǒng)計(jì)的功能示例

    iOS利用Runtime實(shí)現(xiàn)友盟頁(yè)面數(shù)據(jù)統(tǒng)計(jì)的功能示例

    這篇文章主要給大家介紹了關(guān)于iOS利用Runtime實(shí)現(xiàn)友盟頁(yè)面數(shù)據(jù)統(tǒng)計(jì)功能的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • iOS實(shí)現(xiàn)電子簽名

    iOS實(shí)現(xiàn)電子簽名

    這篇文章主要為大家詳細(xì)介紹了iOS實(shí)現(xiàn)電子簽名,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • iOS仿Uber篩選欄效果

    iOS仿Uber篩選欄效果

    這篇文章主要為大家詳細(xì)介紹了iOS仿Uber篩選欄的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • iOS-GCD使用詳解及實(shí)例解析

    iOS-GCD使用詳解及實(shí)例解析

    這篇文章主要介紹了iOS-GCD使用詳解及實(shí)例解析的相關(guān)資料,需要的朋友可以參考下
    2016-11-11

最新評(píng)論