美文网首页ios开发
swift access level(访问级别),open, p

swift access level(访问级别),open, p

作者: jacknathan | 来源:发表于2018-01-11 11:33 被阅读0次

    在swift3.0之后,swift提供了open, public, internal fileprivate, private五种控制访问权限的修饰符。

    private:(最低级别的权限)私有,修饰类的话当前文件可访问,修饰变量的话,实体内部或者extension内可访问

    internal:模块内访问(模块:框架或独立的应用程序)

    fileprivate:定义实体(class, struct, enum等)的源文件内访问

    public: 公共访问,在模块内和模块外(通过import)都可以 访问

    open: (最高级别的权限): 模块内和外都可以访问(同public), 只能修饰类和类内部的成员,不能修饰struct、enum等

    访问级别由高到低的顺序:open > public > internal > fileprivate > private

    public和open的区别

    1. 除open外,public以及访问级别小于public的修饰符,修饰的类和类成员只能在定义的模块内被继承和被override

    2. open修饰的类和类成员,在定义模块内,还有模块之外(import进来),都可以被继承和被override

    相关文章

      网友评论

        本文标题:swift access level(访问级别),open, p

        本文链接:https://www.haomeiwen.com/subject/ruyznxtx.html