【Objective-C笔记】—— 对象3

2017-06-17  本文已影响19人  u14e

属性

@property NSString *itemName

声明一个属性时,会隐含地生成一个对应名称的实例变量和一对存取方法,其中实例变量会在变量名前加下划线

{
    NSString *_itemName
}
- (void) setItemName: (NSString *) name;
- (NSString *) itemName;

属性特性

@property (nonatomic, readwrite, strong) NSString *itemName

任何属性都有三个特性,每个特性都有多种不同的可选类型。在这些可选类型中,有一种是默认的

1. 多线程特性:nonatomic/atomic

大多要设置为nonatomic,因为不是默认的类型,所以必须明确写出

@property (nonatomic) NSString *itemName

2. 读写特性:readwrite(默认)/readonly

3. 内存管理特性:strong(默认)/weak/copy/unsafe_unretained

@property (nonatomic, strong) UItem *containedItem;
@property (nonatomic, weak) UItem *container;

自定义(覆盖)属性的存取方法

上一篇 下一篇

猜你喜欢

热点阅读