Swift Objective-C 访问级别控制

Swift

一、private 

Swift 3.0之前,private修饰的方法和属性可以被子类访问或者重载( cannot override stored properties ),swift 3.0中private修饰的属性和成员变量只能在本类中访问。

二、fileprivate 文件内私有,在同一个源文件声明的类可以访问。

三、internal 默认访问权限,framework 或者 proj内可以访问。

四、public 可以在任何地方访问,framework之内可以被继承或者override,模块外的地方不可以被继承和override。

五、open 任何地方都可以被访问,继承或者override。

 

Objective-C

一、private :外界不可访问

 @private

NSInteger oneInteger;

二、protected :允许子类访问

@interface ClassA :NSObject
{
    NSInteger oneInteger;  //隐含@protected的意思
}
@end
@protected
NSInteger oneInteger;

三、package: 模块内可访问,32位系统中模块外也可访问同public

四、public  最大访问权限

 



 
posted @ 2017-07-12 11:08  一坨☁️  阅读(155)  评论(0编辑  收藏  举报