當定義了一系列的變量時,需要寫很多的getter和setter方法,而且它們的形式都是差不多的,所以Xcode提供了@property和@synthesize屬性,@property用在 .h 頭文件中用作聲明,@synthesize用在.m 文件中用于實現。
在X-code4.5以前,在.h中聲明完屬性之后,如:
@property(nonatomic,assign) int age;
@property(nonatomic,assign) NSString *name;
需要在.m中寫上
@synthesize int age;
@synthesize NSString *name;
系統會自動去實現setter和getter方法
而在X-code4.5之后,@synthesize就不需要再寫了,系統會直接去實現setter和getter方法。
另外,聲明完property屬性之后,會自動生成下劃線,如_age、_name;如果不想要下劃線,那么就可以使用@synthesize去修飾,例如,在.m中寫@synthesize age;那么_age就會變成age