Runtime一: Objective-C语言的动态性总结(编译时与运行时)

Objective-C 
是基于C的,它为C添加了面向对象的特性。
它将很多静态语言在编译和链接时期做的事放到了runtime运行时来处理

编译时: 
编译时只进行最基本的检查报错,包括语法分析,查看类型是否匹配,方法是否申明
将程序代码翻译成计算机能够识别的语言(例如汇编等)

运行时: 
先决定对象的类型,再去决定调用的方法

任何调用方法本质:就是发送一个消息。
方法的调用实际就是告诉对象要干什么,给对象(的指针)传送一个消息,对象为接收者(receiver),调用的方法及其参数即消息(message),给一个对象传消息表达为:[receiver message]; 接受者的类型可以通过动态类型识别于运行时确定。

void objc_msgSend (id self, SEL cmd, ...)

猜你喜欢

转载自blog.csdn.net/odyyy/article/details/81216002