如果給一個(gè)屬性同時(shí)提供了getter/setter方法, 那么我們稱這個(gè)屬性為可讀可寫屬性
如果只提供了getter方法, 那么我們稱這個(gè)屬性為只讀屬性
如果只提供了setter方法, 那么我們稱這個(gè)屬性為只寫屬性
如果既沒有提供getter也沒有提供setter方法, 那么我們稱這個(gè)屬性為私有屬性
格式:
@property(屬性修飾符) 數(shù)據(jù)類型 變量名稱;
@property(readwrite) int age;
// readwrite: 代表既生成getter方法 , 也生成setter方法
// 默認(rèn)情況下 @property就是readwrite的
@property(getter=abc) double height;
/*
- (void)setHeight:(double)height;
- (double)height;
- (void)setHeight:(double)height;
- (double)abc;
*/
@property(setter=tiZhong:) double weight;
/*
- (void)setWeight:(double)weight;
- (void)tiZhong:(double)weight;
*/
@property(readonly) NSString * name;
// readonly: 代表只生成getter方法不生成setter方法
@property(getter=isMarried) BOOL married;
// 程序員之間有一個(gè)約定, 一般情況下獲取BOOL類型的屬性的值, 我們都會(huì)將獲取的方法名稱改為isXXX