@dynamic关键字和@synthesize的作用

Objective-C属性修饰符解析
本文详细介绍了Objective-C中@property修饰符@dynamic和@synthesize的作用及区别。@dynamic指示编译器不自动生成getter和setter方法,需手动实现;@synthesize则让编译器自动生成这些方法,并指定与属性对应的成员变量。若未指定修饰符,默认为@synthesize。

1、@dynamic:修饰的属性、其getter和setter方法编译器不会自动生成、必须需要自己实现。如果自己没有实现getter和setter方法、编译时没问题,运行时执行对应的方法(动态绑定)时会导致程序崩溃。

2、@synthesize:修饰的属性、其getter和setter方法编译器会自动生成,不需要自己实现。且指定与属性相对应的成员变量。

3、如果一个属性(@property)没有用dynamic和synthesize修饰,那么默认的是@synthesize var = _var;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值