swift 3 : The difference between Public and Internal access modifiers?

标签 swift oop inheritance public internal

<分区>

我阅读了 Apple 关于 Swift 3 中访问修饰符的引用资料。我也在 stackoverflow 上阅读了同样的内容,但我没有像提问者那样得到答案。据我正确理解,有四个级别:

  1. 开放、公开
  2. 内部
  3. 文件私有(private)
  4. 私有(private)

我为自己创建了方案以了解所有这些修饰符之间的区别并上传了 here .如您所见,Public 和 Internal 修饰符之间没有区别。但是它们处于不同的级别。任何想法将不胜感激!

最佳答案

  • 内部 - 这是 swift 中的默认访问说明符。有了这个我们 可以访问同一模块中的数据成员和成员函数 (目标)。

  • Public - 这是您可以访问所有数据成员和成员的地方 在同一模块内和模块外运行。但你不能 在模块外子类化或覆盖。

  • Open - 与 public 相同,唯一的区别是您可以子类化或 在模块外覆盖。

  • Fileprivate - 顾名思义,数据成员和成员函数 可在同一文件中访问。

  • Private - 这是您可以在以下范围内访问的地方 函数体或类。

关于 swift 3 : The difference between Public and Internal access modifiers?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42897586/

相关文章:

arrays - 对数组中相似的对象进行排序和分组

swift - 从 quickblox 检索位置时出现 403 禁止错误

ios - 找不到有效的 GoogleService-info.plist

swift - 协议(protocol)不符合自身?

c++ - 调用成员函数时遇到问题

java - 是否相应地实现了方法

postgresql - 哪些表有表继承

C++ 继承类 'Window' : base class undefined

c++ - 一组根据操作数类型而不同名称的函数可以在C语言中称为理论上的静态多态吗?

c++ - 为什么模板函数不能将指向派生类的指针解析为指向基类的指针