Swift 访问控制

关于类型访问控制关键字有 public ,open, internalfileprivateprivate

  • 默认情况下是internal,允许实体被定义模块中的任何源文件访问,但不能被该模块之外的任何源文件访问,通常定义在应用程序或框架的内部结构时使用
  • fileprivate 访问将实体的使用限制于当前定义源文件中,当一些细节在整个文件中使用时,使用fileprivate访问隐藏特性功能的实现细节。使用fileprivate 修饰方法 是可以被重写的。但是类不可以被继承!
  • private 将实体的使用限制于封闭声明中,当一些细节仅在单独声明中使用,使用private访问细节特性功能的实现细节。使用private修饰的方法,子类不可以重写,但是子类的方法名与父类的方法名相同是不会报错的
  • open访问是最高访问级别,private是最低级别

publicopen都是访问控制级别,用来控制别人能不能访问你的代码。

  • public :别人可以使用你的类或方法,但不能继承或重写
  • open:别人可以使用你的类或方法,也可以继承和重写

一句话总结:open = public + 允许继承和重写。

相关推荐
2501_916008891 天前
Swift多环境配置:利用Scheme实现灵活的多环境管理
开发语言·ide·vscode·ios·个人开发·swift·敏捷流程
00后程序员张1 天前
Windows / Linux / Mac 上不用 Xcode 把 IPA 上传到 App Store,upload 命令详解
android·ios·小程序·https·uni-app·iphone·webview
秦少游在淮海1 天前
id - Android、iOS
android·ios
太子釢2 天前
用 AI 完整实现 Github 客户端:基于 KMP + SwiftUI + Compose
android·人工智能·ios
软泡芙2 天前
【iOS】 Alamofire + Moya + SwiftData 完整教程
ios
我是谁的程序员2 天前
Windows / Linux / Mac 上不用 Xcode 把 IPA 上传到 App Store,upload 命令详解
后端·ios
iFlyCai2 天前
iOS中的单例模式详解
ios·单例模式·objective-c·多线程·swift
ilawsonlu2 天前
如何正确处理 CoreBluetooth 超时与 Task Cancellation
ios
00后程序员张2 天前
SSL Pinning 抓包抓不到明文?绕过证书固定的几种方案
网络协议·计算机网络·网络安全·ios·adb·https·udp
ii_best2 天前
手机自动化脚本按键精灵实战:随机布局安全数字键盘的自动化输入方案
android·运维·ios·自动化·手机