1、private
修饰符
private 只允许在当前class类所在源文件中调用, 修饰的方法不可以被代码域之外的地方访问 ,本类源码文件className.swift
的extension(扩展)除外。
2、fileprivate
修饰符
fileprivate 其修饰的属性或者方法只能在当前的 .swift
源文件里可以访问,即在同一个.swift
文件中,所有的 fileprivate 方法属性都是可以访问到的。
3、public 修饰符
修饰的属性或者方法可以在其他作用域被访问
但不能在重载 override 中被访问
也不能在继承方法中的 Extension 中被访问
4、open 修饰符
open则是弥补public语义上的不足。
现在的pubic有两层含义:
- 这个元素可以在其他作用域被访问
- 这个元素可以在其他作用域被继承或者override
5、internal修饰符
internal是内部的意思,即有着internal访问权限的属性和方法说明在模块内部可以访问,超出模块内部就不可被访问了。在Swift中默认就是internal的访问权限。
从高到低排序如下:
open > public > interal > fileprivate > private
开放 > 公共 > 内部访问(默认)> 内部无限访问(明示)> 内部有限访问
网友评论