1.首先编译器会将代码[receiver message];
2.转化为objc_msgSend(receiver, @selector (message));,
3.在objc_msgSend函数中,首先通过obj的isa指针找到obj对应的class。
4.在Class中先去cache中 通过SEL查找对应函数method,若 cache中未找到。
5.再去类的分派表中查找,若分派表中未找到,则取superClass中查找,如此一致回溯至NSObject类。
6.若能找到,则将method加入到cache中,以方便下次查找,并跳转到对应的函数中去执行。