OC的@property和@synthesize
OC的@property和@synthesize
我爱觉觉 发表于2年前
OC的@property和@synthesize
  • 发表于 2年前
  • 阅读 29
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: OC的@property和@synthesize和属性和成员变量 的区别


1. 成员变量和属性的区别。

@interface User : NSObject

{

    int _height; // 成员变量,不会自动生成setter 和getter方法。

}


@property (strong, nonatomic) NSString *uid; // 属性。 会自动生成setter和getter方法。

@property (assign, nonatomic) int age;


2. 

@property 和 @synthesize 

  声明一个setter getter 方法
@synthesize 实现setter getter 方法

在Xcode4.5及以后的版本中,可以省略@synthesize ,编译器会自动帮你加上getter 和 setter 方法的实现,并且默认会去访问_age这个成员变量,如果找不到_age这个成员变量,会自动生成一个叫做 _age私有成员变量。

如果加了 

@synthesize age; 则可以使用age的成员变量。


3. 由于书写习惯,OC中定义成员变量的时候,习惯写 _age 的这种形式。




共有 人打赏支持
粉丝 2
博文 49
码字总数 10640
×
我爱觉觉
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: