Swift-Private/FilePrivate/Public/Open的作用和区别
来源:互联网 发布:双卡手机如何选择网络 编辑:程序博客网 时间:2024/06/16 18:56
原来 Swift 中有2种常用访问控制关键字(访问控制修饰符),分别为 private 和 public。而在 Swift 3.0+,又在原来的基础上新增了两种:fileprivate、open。它们可以看成是对 private 和 public 的进一步细分。
用一张图区分四种修饰符的访问权限
1、private 修饰符
只允许在当前类中调用,不包括 Extension
private 现在变为了真正的私有访问控制
用 private 修饰的方法不可以被代码域之外的地方访问
2、fileprivate 修饰符
fileprivate 其实就是过去的 private。
其修饰的属性或者方法只能在当前的 Swift 源文件里可以访问。
即在同一个文件中,所有的 fileprivate 方法属性都是可以访问到的。
class A { fileprivate func test(){ print("this is fileprivate func!") }}class B:A { func show(){ test() }}
3、public 修饰符
修饰的属性或者方法可以在其他作用域被访问
但不能在重载 override 中被访问
也不能在继承方法中的 Extension 中被访问
4、open 修饰符
open 其实就是过去的 public,过去 public 有两个作用:
修饰的属性或者方法可以在其他作用域被访问
修饰的属性或者方法可以在其他作用域被继承或重载 override
从高到低排序如下:
open > public > fileprivate > private
0 0
- Swift-Private/FilePrivate/Public/Open的作用和区别
- private、fileprivate、public、open修饰符的作用和区别
- Swift - 访问控制(fileprivate,private,internal,public,open)
- swift中访问控制(fileprivate,private,internal,public,open)
- Swift 4.0 中的 open,public,internal,fileprivate,private
- Swift 3 中Private和Fileprivate的区别
- 访问控制(fileprivate,private,internal,public,open)
- Swift_访问控制(open>public>fileprivate>insternal>private)
- Swift基础之:新的访问控制fileprivate和open
- Swift 新的访问控制fileprivate和open
- Swift 3:新的访问控制fileprivate和open
- public,private,protected 区别和作用(C++)
- public,private,protected 区别和作用(C++)
- public,private,protected 作用 区别
- Swift 3中新的访问控制关键字fileprivate和open
- Swift 3必看:新的访问控制fileprivate和open
- Swift 3必看:新的访问控制fileprivate和open
- Swift 3必看:新的访问控制fileprivate和open
- Ecshop模板开发(十六):查看后台分配变量的键值
- 敌兵布阵 【线段树 or 树状数组 区间求和】
- 17年武汉大学网络赛—Divide by Six
- Virtualbox扩容问题
- linux的进度条程序
- Swift-Private/FilePrivate/Public/Open的作用和区别
- Buy Tickets
- I Hate It 【线段树】
- 洛谷 P2831 愤怒的小鸟
- 事件库之Libev(一)
- 装备选择
- LeetCode算法题——20. Valid Parentheses
- PDSOJ 1048 Fibonacci Numbers(大数)
- 粗谈自定义控件