@property 关键字
5.1 问题:setter, getter的声明是没有什么任何技术含量
5.2 作用: 自动生成setter, getter 方法声明
5.3 语法: @property 数据类型 名称; 如:@property int age;
5.4 原理:编译器在编译的时候.会根据@property生成getter和setter方法的实现.
@property 数据类型 名称; 生成为:
- (void)set首字母大写的名称:(数据类型)名称;
- (数据类型)名称;
@property int age;
- (void)setAge:(int)age;
- (int)age;
5.5 注意:
1) @property的类型和属性的类型一致.
@property的名称和属性的名称一致(去掉下划线)不要乱写.
2) @property的名称决定了生成的getter和setter方法的名称.
所以,@property的名称要和属性的名称一致 去掉下划线 否则生成的方法名就是不符合规范的
@property的数据类型决定了生成的setter方法的参数类型 和 getter方法的返回值类型.
3) @property只是生成getter和setter方法的声明. 实现还要自己来. 属性还要自己定义.