OC是使用消息结构的语言,而非使用函数调用。
消息结构的写法:
Object *ojb = [Object new];
[obj performWith:parameter1 and parameter2];
函数调用的写法:
Object *obj = new Object;
obj -> perform(parameter1, parameter2);
-
采用消息结构的语言,不论是否多态,总是在运行时才会去查找所要执行的方法。
-
编译器不关心接收消息对象的类型,在运行时才会去处理接收消息对象的问题,这个过程叫做动态绑定。
-
Objective-C 的重要工作都由“运行期组件”(runtime component)而非编译器来完成。使用Objective-C的面向对象特性所需的全部数据结构及函数都在运行期组件里面。比如运行期组件里面就含有全部的内存管理方法。运行期组件的本质就是一种与开发者所编写的代码相链接的“动态库”(dynamic library),其代码能够把开发者所编写的所有程序粘合起来。这样的话,只需更新运行期组件,就可以提升应用程序的性能。
运行期组件.png
-
Objective-C 是 C 的“超集”,C语言中的所有功能在编写 Objective-C代码时依然适用。
网友评论