您的位置:首页 > 移动开发 > IOS开发

iOS积累-为什么使用属性之后, 同时重写setter,getter方法会报错

2017-06-27 17:02 579 查看
今天有一个初学者遇到一个问题,就是使用property的时候,同时重写set get方法会报错,如
#import <UIKit/UIKit.h> @interface ViewController : UIViewController{ } @property (nonatomic, copy) NSString *name; - (void)setName:(NSString *)name; - (NSString *)name; @end

单独重写任意一个方法都不会报错,但是同时重写的话,会报错!

首先,我们声明属性的时候, 会默认给声明的属性写好setter,getter方法.

当你复写了get和set方法之后@property默认生成的@synthesize就不会起作用了,这也就意味着你的类不会自动生成出来实例变量了,你就必须要自己声明实例变量,   简而言之就是: 你同时写的话,系统没法就不会把你重写的变量当成你属性声明的变量.  当成属性如下:





这时就不会报错了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: