06-09、类中成员变量(属性)修饰符:@public@private@protected @package

@public 就是实例变量(成员变量或属性)修饰符

@public

可以在其它类中访问被public修饰的成员变量
也可以在本类中访问被public修饰的成员变量
可以在子类中访问父类中被public修饰的成员变量

@private

不可以在其它类中访问被private修饰的成员变量
可以在本类中访问被private修饰的成员变量
不可以在子类中访问父类中被private修饰的成员变量

@protected

不可以在其它类中访问被protected修饰的成员变量
可以在本类中访问被protected修饰的成员变量
可以在子类中访问父类中被protected修饰的成员变量

注意: 默认情况下所有的实例变量都是protected

@package

介于public和private之间的
如果是在其它包中访问那么就是private的
如果是在当前代码所在的包种访问就是public的
可以在子类中访问父类中被package修饰的成员变量

实例变量修饰符作用域: 从出现的位置开始, 一直到下一个修饰符出现
如果没有遇到下一个实例变量修饰符, 那么就会修饰后面所有的实例变量

#import <Foundation/Foundation.h>
@interface Person : NSObject
{
@public
int _age;

@private
double _height;

@protected
double _weight;

 @package
NSString *_name;
NSString *_tel;
NSString *_email;
}
@end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容