记录: Swift中权限关键字

Swift中现有的5个权限关键字: open public internal private
fileprivate


这5个关键字都可以用来修饰属性和方法, 那么他们之间的具体区别是什么呢?

  1. open: 最高权限,可以被任何module和文件访问和继承重写, 比如引入的一个三方库中, 有需要被本app使用的方法或者属性, 一般都会被声明为open.
  2. public: 可以被任何人访问,但是在其他module中不可以被继承和重写,在当前module内可以.
  3. internal: 为默认属性, 可以省略不写, 如果项目没有进行组件化开发,整个APP项目内都是可以访问的.
  4. private: 被private修饰的属性和方法 ,只可以在该类下使用(extension可使用,因为是同类.)
  5. fileprivate: fileprivate和private 想比较一下,区别一目了然,相同文件下是可以调用的,其他和private一样.
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。