AnyObject

主要观点:

  • AnyObject 表示单个引用计数对象,有时用于对象的生命周期或向下转换为具体类型,可作为泛型约束。
  • 可将 AnyObject 用作协议约束,如protocol MyDelegate: AnyObject,可对实现者进行弱引用等操作。
  • any MyDelegate本身不是 AnyObject,因为它带有“见证表”指针,这是协议一致性的运行时表示,而 Objective-C 协议不以这种方式表示。
  • Swift 类约束协议类型比 Objective-C 稍不方便,不能混合使用,但仍可进行多种操作。

关键信息:

  • AnyObject 特点及用途。
  • 协议约束中 AnyObject 和any MyDelegate的区别。
  • Objective-C 协议与 Swift 协议在表示上的差异及原因。

重要细节:

  • Apple OS 上关于 AnyObject 的说法是假的但应当作真的。
  • 协议扩展中的方法是静态解析的原因及与动态分发的关系。
  • 文章发布时间及分类标签等信息。
阅读 14
0 条评论