Open xinrong2019 opened 5 years ago
对象方法用对象指针调用
类方法用类名调用
假设有一个类Person:
Person *person = [Person new];
如下两个调用分别是对象调用和类调用:
[person eat]; [Person personWithName:@"Tom"]
OC方法调用实际上就是在给接收者发送消息
[接收者 消息];
OC语言内部维护一个方法表,方法表中存的是各方法的逻辑实现在内存中的地址。
当客户端给接收者发送消息的时候,首先会根据方法表找到方法的指针,找到其在内存中的位置,执行该方法的逻辑实现。
OC方法调用方式
对象方法用对象指针调用
类方法用类名调用
假设有一个类Person:
如下两个调用分别是对象调用和类调用:
OC方法调用机制
OC方法调用实际上就是在给接收者发送消息
[接收者 消息];
OC语言内部维护一个方法表,方法表中存的是各方法的逻辑实现在内存中的地址。
当客户端给接收者发送消息的时候,首先会根据方法表找到方法的指针,找到其在内存中的位置,执行该方法的逻辑实现。