iOS知识点-10.请说明并比较以下关键词:Open, Public, Internal, File-private, Private

Swift Basics
  1. 请说明并比较以下关键词:Open, Public, Internal, File-private, Private

Swift 有五个级别的访问控制权限,从高到低依次为 Open,Public,Internal,File-private,Private。

他们遵循的基本原则是:高级别的变量不允许被定义为低级别变量的成员变量。比如一个private的class中不能含有public的String。反之,低级别的变量却可以定义在高级别的变量中。比如public的class中可以含有private的Int。

  • Open 具备最高的访问权限。其修饰的类和方法可以在任意 Module 中被访问和重写;它是 Swift 3 中新添加的访问权限。
  • Public 的权限仅次于 Open。与 Open 唯一的区别在于它修饰的对象可以在任意 Module 中被访问,但不能重写。
  • Internal 是默认的权限。它表示只能在当前定义的 Module 中访问和重写,它可以被一个 Module 中的多个文件访问,但不可以被其他的 Module 中被访问。
  • File-private 也是 Swift 3 新添加的权限。其被修饰的对象只能在当前文件中被使用。例如它可以被一个文件中的class,extension,struct共同使用。
  • Private 是最低的访问权限。它的对象只能在定义的作用域内使用。离开了这个作用域,即使是同一个文件中的其他作用域,也无法访问。
上一题 目录 下一题
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,054评论 3 119
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 9,473评论 1 10
  • 我就喜欢这个
    易够够阅读 2,507评论 0 0
  • 时光飞逝,浙江卫视的《向上吧,诗词》到了总决赛。我没有时间看直播。 现在终于闲了下来,我拉着爱看动画片、爱玩游戏9...
    Tony说事阅读 5,303评论 1 4
  • 据有关资料介绍,常用热水洗脚可以改善心脏和血管机能,且不会增加心脏负担。所以老年人和患有心血管疾病的人,每天可用4...
    颖茜阅读 2,507评论 0 3

友情链接更多精彩内容