今天有一個(gè)初學(xué)者遇到一個(gè)問(wèn)題,就是使用property的時(shí)候,同時(shí)重寫(xiě)set get方法會(huì)報(bào)錯(cuò),如
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController{
}
@property (nonatomic, copy) NSString *name;
- (void)setName:(NSString *)name;
- (NSString *)name;
@end
單獨(dú)重寫(xiě)任意一個(gè)方法都不會(huì)報(bào)錯(cuò),但是同時(shí)重寫(xiě)的話(huà),會(huì)報(bào)錯(cuò)!

QQ20160321-2.png
主要是因?yàn)楫?dāng)你復(fù)寫(xiě)了get和set方法之后@property默認(rèn)生成的@synthesize就不會(huì)起作用了,這也就意味著你的類(lèi)不會(huì)自動(dòng)生成出來(lái)實(shí)例變量了,你就必須要自己聲明實(shí)例變量,如下:

QQ20160321-3.png

QQ20160321-4.png
這時(shí)就不會(huì)報(bào)錯(cuò)了。