Swift中的访问控制模型基于模块和源文件,类这三个概念
- internal : 在本模块中都可进行访问(是默认类型,子类也可继承)
//swift中类和属性默认被internal修饰,默认情况下internal被略去
internal class Person: NSObject {
internal var a:Int = 0
}
- private : 当前类私有(子类也不能访问)
- fileprivate:在当前源文件中可以访问
- pubic:如果修饰类,可夸模块访问,无法继承,修饰方法不能被override
- open:如果修饰类,可夸模块访问,可以继承,修饰方法可以被override
注意:
- Swift访问权限,作用于类,属性,方法
- Swift中的访问级别遵循一个基本原则:不可以在某个实体中定义访问级别更高的实体
网友评论