OC 中成员变量有四个作用域
- @private
- @protected
- @package
- @public
这四个作用域的作用范围是从小到大的
@private 的作用域只能在当前类的对象方法中使用,外部的类想要使用只能调用 get 方法 和 set 方法
@protect 的作用域是只能在当前类 或者当前类的子类中直接访问
@public 的作用域是可以在任何地方通过 -> 访问
@package 的作用域是在同一框架下可以访问,基本上没有机会用到
如果新声明一个变量,默认的作用域是 @protected
还有一种特殊情况,在 .m 文件也可以声明成员变量,但是在 .m 文件中声明的成员变量是私有的 (别的类不可以包含 .m 文件,因此不能访问到 .m 文件中生命的成员变量)