访问控制(Access Control)虽是比较基础的知识,但包含规则繁多,本文讲述其中一部分方便大家理解之用。
swift中的访问控制模型基于模块(module)和源文件(Source File)这两个概念。模块指的是Framework或App bundle,在swift中,可以用import关键字引入自己的工程;源文件指的是中的Swift File,就是编写代码的文件,它通常是属于某一个模块。
swift3 之后访问控制关键字权限从高到低依次包括:open(公开权限)、 public(公有访问权限)、internal(内部权限也是默认权限)、fileprivate(文件私有权限)、private(私有权限)五个。
- open:可以在任何地方被访问、继承、重写。
- public:可以在任何地方被访问,在其他模块中不能被继承和重写。
- internal:在整个模块内都可以被访问。