读书人

Objective-C runtime之讯息相关概念(

发布时间: 2013-03-01 18:33:02 作者: rapoo

Objective-C runtime之消息相关概念(二)

四、runtime中的消息

1、什么是消息

进入今天的正题之前,先来说说跟message息息相关的几个概念

①message(消息)

message的具体定义很难说,因为并没有真正的代码描述,简单的讲message 是一种抽象,包括了函数名+参数列表,他并没有实际的实体存在。

②method(方法)

method是真正的存在的代码。如:- (int)meaning { return 42; }

③selector(方法选择器)

selector 通过SEL类型存在,描述一个特定的method 或者说 message。在实际编程中,可以通过selector进行检索方法等操作。

2、两个跟消息相关的概念

①SEL

SEL又叫方法选择器,这到底是个什么玩意呢?在objc.h中是这样定义的:

objc_msgSend(receiver, selector)
实际上,同objc_msgSend方法类似的还有几个:

objc_msgSend_stret(返回值是结构体)

objc_msgSend_fpret(返回值是浮点型)

objc_msgSendSuper(调用父类方法)

objc_msgSendSuper_stret(调用父类方法,返回值是结构体)

它们的作用都是类似的,为了简单起见,后续介绍消息和消息传递机制都以objc_msgSend方法为例。

-------------未完待续-------------


读书人网 >移动开发

热点推荐