OC中如何实现私有成员变量
-
@property生成的成员变量即为私有成员变量
- @property生成的是: 带下划线的私有成员变量(如_age), 以及这个成员变量的setter和getter方法
- 它生成的成员变量只能通过提供给外部的setter和getter接口来访问
- 如果@property是在.m文件中声明的, 那么就是当前文件的私有变量, 外界无法使用
在.h文件中生成的, 使用@private声明的也是私有变量
在.m文件中, @implementation{}中添加的变量也是私有变量
-
如果是私有变量, 在类的内部一般使用以下几个方法访问:
- age = 10: 直接访问
- 如果是@property生成的: 使用_age = 10 和 self.age = 10 以及 person->_age = 10 来访问;
- 如果实在@implementation{}中生成的, 可以使用: age = 10 以及 p->age = 10来方法