在面向对象中,直接发给对象的一个命令称为“消息”,而被调用的代码称为方法。给对象发送一个消息和调用一个对象的方法基本是一样的。
1.方法定义
在Objective-C,一个方法是类的一部分。一个方法的声明格式为:
+ (返回类型) 方法名:(参数类型) 参数名:(参数类型2) 参数名2:……;
或者
-(返回类型) 方法名:(参数类型) 参数名:(参数类型2) 参数名2:……;
- 如果是(“+”),则是类的方法,通过发一个消息给类本身来调用;如果是("-"),则是实例方法,通过发一个消息给类的实例来调用。
- 一个Objective-C方法也会包含一些参数,为每个参数指定了数据类型,同时会指定一个返回类型,如果没有返回值,则返回类型为(void)。
- 一个Objective-C方法名字可以包含很多冒号,冒号个数等于它的参数的个数,每个冒号后面跟着参数的数据类型和名字。
2.调用方法
在Objective-C中,把“调用一个函数”称为“向一个对象发送一个消息”,或称为“调用方法”。调用方法格式:
[对象 方法];
或者
[类 方法名];
若方法有返回值, 可以把返回值存放在变量中,格式如下:
变量 = [实例 方法];
从消息的角度出发,调用一个类或实例的方法,也就是给这个类或实例发消息(message).类或实例应称为消息“接收方”,因此,调用的格式可以理解为:
[接受方 消息];
如一个消息是一个带有参数的方法,那么,每一个参数值都跟一个冒号后面,格式如下:
[接受方 参数名1:参数值1 参数名2:参数值2 ……];