swift 4.0中访问控制private、fileprivate、internal、public、open的区别

Swift 4.0中访问控制权限由低至高提供了 private,fileprivate,internal,public 和 open 五种。默认的 internal 在绝大部分时候是适用的,但是对于一个严格的项目来说,精确的最小化访问控制级别对于代码的维护来说还是相当重要的。尤其是当我们开发SDK时,这些访问权限就更为重要了。

  • private: private 修饰的属性或方法只能在当前类中访问。子类都无法访问;
  • fileprivate: fileprivate 修饰的属性或方法可以在当前文件内访问,不管是否在本类的作用域;
  • internal: internal 修饰的属性或方法在整个模块或者框架内都可以访问;
  • public: 被 public 标记的内容不能在别的框架中重写和继承;
  • open: 被 open 标记的内容能在别的框架中重写和继承;

你可能感兴趣的:(Swift,private,fileprivate,internal,public,open)