message是指一个对象接收方法名(method name),方法参数(parameters)并执行(execute)的过程。为了使对象做某件事,我们需要向这个对象发送message来通知它调用method。Objective-C中,我们用中括号包裹住对象(object)和发送给对象的message。例如,下面的消息表达式(message expression)要求myRectangle执行(perform)它的display方法(method)。
[myRectangle display];
方法名(method name)是用来选择方法实现的—当message发出时,运行时系统(runtime system)从接收者(receiver)的指令(repertoire)中选择合适的方法(method)并调用。因此,消息(message)中的方法名(method name)也被命名为selector(选择器、选择标记、选择因子,爱叫啥叫啥)
张小明注:在文档中我们经常会看到method name和selector name两种说法,小明觉得两种是没有区别的,都是指方法名。
方法(method)可以接收参数(argument)。带有一个参数的message会有一个冒号在方法名(selector name)和参数中间。多个参数有多个冒号。(This construct is called a keyword; a keyword ends with a colon, and a parameter follows the colon. A method that takes multiple parameters has multiple keywords, each followed by a colon.)
[myRectangle setLineWidth:0.25];
[myRectangle setWidth:20.0 height:50.0];