OC点语法实质是getter方法和setter方法的调用
是编译器的特性,编译器遇到点语法就转换为相应的setter或getter方法
可以用断点调试或者在getter和setter方法中打印输出
#import <Foundation/Foundation.h>
@interface Person : NSObject{
int _age;
}
-(void)setAge:(int)age;
-(int)age;
@end
@implementation Person
-(void)setAge:(int)age{
_age = age;
}
-(int)age{
return _age;
}
@end
int main(int argc, const char * argv[])
{
Person* p = [Person new];
//[p setAge:10];
p.age = 10;//当编译器遇到点语法时,如果有赋值时,是setter方法会自动转换为[p setAge:10];
//点语法实质是方法调用
int a = p.age;//[p age];此时没有赋值。是getter方法
return 0;
}