这份文档描述了OS X Objective-C2.0 运行时库支持下的函数集和数据结构,这些函数实现可以在路径为/user/lib/libobjc.A.dylib的共享库中找到。该库为Objective-C的动态特性提供支持,这些特性也同样被链接到了Objective-C应用上。
这些参考文档主要用于开发Objective-C与其他语言之间的桥接层,或者进行底层调试工作。一般不会直接用runtime来进行Objective-C编程。
(关于runtime更新的描述,没太大用。)
谁应该阅读此文档?
想学习runtime的开发者。这里假设开发者已经有一些C语言知识,但无需精通。
从函数开始学习吧:
(1)返回一个类的类名
const char * class_getName(Class cls)
// cls: 类对象
(2)返回父类的类名
Class class_getSuperclass(Class cls)
(3)设置一个给定类的父类
Class class_setupSuperclass(Class cls, Class newSuper)
// return 返回修改之前的父类
// 不建议使用这个函数
(4)查看一个类是否是元类
BOOL class_isMetaClass(Class cls)
(5)返回一个类的实例的大小
size_t class_getInstanceSize(Class cls)
// return: 实例占用的字节数