IOS开发笔记 ——@dynamic 和 @synthesize 和区别

本文探讨了在iOS开发中,@dynamic和@synthesize的区别。@synthesize默认为属性生成get和set方法,而@dynamic则表明这些方法将在运行时或手动实现。文章通过实例展示了如何使用运行时来生成get和set方法。
摘要由CSDN通过智能技术生成

@dynamic 和 @synthesize 和区别

当我们设置一个类的变量的时候,我们会考虑设置属性,也就是@property ,当我们设置玩属性后,我们要实现它的 get 和 set 方法,但是现在的编译器默认已经帮我们实现好了,也就是我们@synthesize。
@synthesize 的作用就是帮我们实现 get 和 set 方法,如下

@property (nonatomic,copy) NSString *author;

// set
- (void)setAuthor:(NSString *)author {
    [_author release];
    [author retain];
    _author = author
}

// get
- (NSString *)author {
    return _author;
}

而 @ dynamic 表示这个成员变量的 getter 和 setter 方法并不是直接由编译器生成,而是手工生成或者运行时生成。
这就是 @dynamic 的作用,那么我们该怎么运用运行时来生成 ge

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值