-
fileprivate
在原有的swift中的 private其实并不是真正的私有,如果一个变量定义为private,在使用extension的时候仍然能够被访问.
例如
class Admin {
private var name = "private"
}
extension Admin{
var privateAccess: String {
return name
}
}
- 在Swift 3. 0,
//filePrivate = Swift 2.2 private
//private = 真正的private
-
open
Swift 2.2 pubic有两层含义: - 元素可以在其他作用域被访问
- 元素可以在其他作用域被继承或者override
Swift 3.0 open = Swift 2.2 public
Swift 3.0 public 不能被override , final也可以跟着显示的的指出此类的方法不能被override.
目前的顺序而言, open > public > internal > fileprivate > private.