Objective C 运行时特性是什么?

Lew*_*ack 5 terminology runtime objective-c nsobject swift

在我刚刚读到的一篇博客文章中:

'Swift 允许我们从 NSObject 扩展类以获得对象的 Objective-C 运行时功能。它还允许我们使用 @objc 注释 Swift 方法,以允许 Objective-C 运行时使用这些方法。

我不明白 Objective-C 运行时特性这个术语。这是否意味着该代码也可以在 Objective-C 项目中使用?

pap*_*111 3

引用苹果文档

Objective-C 运行时是一个运行时库,为 Objective-C 语言的动态属性提供支持,因此由所有 Objective-C 应用程序链接。Objective-C 运行时库支持函数在位于 /usr/lib/libobjc.A.dylib 的共享库中实现。

该 API 主要用于开发 Objective-C 和其他语言之间的桥接层,或用于低级调试。您很可能不需要使用它。

即使没有一行 Objective-C 代码编写,每个 Swift 应用程序也会在 Objective-C 运行时内执行,因此您可以访问它。

你可以做一些事情,比如swizzling