07-方法的定义和使用

1、定义1个类,在类的.h文件申明方法,在.m文件中实现方法
@interface 类名 : NSObject
{
属性 属性表示类的特征.
}
方法的声明; 方法表示类的功能.
@end
@implementation 类名
方法的实现;
@end

方法头中的数据类型都要用1个小括弧括起来.
- (返回值类型)方法名称:(参数类型)参数名称;

2、 无参数的方法.

1). 声明
a. 位置: 在@interface的大括弧的外面.
b. 语法:
- (返回值类型)方法名称;
- (void)run;
表示声明了1个无返回值并且无参数的方法 方法名字叫做run
2). 实现
a.位置: 在@implementation之中实现
b.实现的语法:
将方法的声明拷贝到@implementation之中.去掉分号 追加大括弧1对 将方法实现的代码
写在大括弧之中.
3).调用
a. 方法是无法直接调用的.因为类是不能直接使用的.必须要先创建对象.
那么这个对象中就有类中的属性和方法了 就可以调用对象的方法了.
b. 调用对象的方法.
[对象名 方法名];
3、带1个参数的方法.
1). 声明
a.位置: 在@interface的大括弧的外面.
b.语法:
- (返回值类型)方法名称:(参数类型)形参名称;
- (void)eat:(NSString *)foodName;
定义了1个方法 这个方法没有返回值.
这个方法的名字叫做eat:
这个方法有1个参数,类型是NSString *类型的 参数的名字叫做foodName
- (void)eat:(NSString *)foodName;
2). 实现
a.位置: 在@implementation之中实现
b.语法: 将方法的声明拷贝到@implementation之中.去掉分号 追加大括弧1对 将方法实现的代码
写在大括弧之中.
3). 调用
a. 方法是无法直接调用的.因为类是不能直接使用的.必须要先创建对象.
那么这个对象中就有类中的属性和方法了 就可以调用对象的方法了.
b. 调用语法:
[对象名 方法名:实参];

4、带多个参数的方法.
1) 声明
a.位置: 在@interface的大括弧的外面.
b. 语法:
- (返回值类型)方法名称:(参数类型)形参名称1 :(参数类型)参数名称2 :(参数类型)参数名称3;
- (int)sum:(int)num1 :(int)num2;
表示声明了1个方法 这个方法的返回值类型是int类型的.
方法的名称叫做 sum: :
有两个参数 参数类型都是int类型 参数名称叫做num1 num2
2).实现.
a. 位置: 在@implementation之中实现
b. 实现的语法: 将方法的声明拷贝到@implementation之中.去掉分号 追加大括弧1对 将方法
实现的代码写在大括弧之中.
3).调用:
a. 方法是无法直接调用的.因为类是不能直接使用的.必须要先创建对象.
那么这个对象中就有类中的属性和方法了 就可以调用对象的方法了.
b. 调用带多个参数的语法
[对象名 方法名:实参1 :实参2 :实参3];

5、带参数的方法声明的规范:
1). 如果方法只有1个参数. 要求最好这个方法的名字叫做 xxxWith:
xxxWithxxx
eatWith:
eatWithFood:
这样写的话,那么调用方法的时候看起来就像是1条完整的语句. 提高了我们代码的阅读性.
遵守的规范: 就是让我们的方法调用的时候看起来像1条完整的语句.
2).如果方法有多个参数 建议这个方法名称:
方法名With:(参数类型)参数名称 and:(参数类型)参数名称 and:(参数类型)参数名称;
- (int)sumWith:(int)num1 and:(int)num2;

3).如果方法的返回值是当前类的对象,那么方法的返回值就写instancetype
更详细的写法
方法名With参数1:(参数类型)参数名称 and参数2:(参数类型)参数名称 and参数3:(参数类型)参数名称;

猜你喜欢

转载自blog.csdn.net/daidaishuiping/article/details/80190158