IOS基础入门Xcode Day04笔记:方法的实现声明和调用

1、类的声明和实现

@interface 类名: NSObject
{
	属性 //属性表示类的特征
}
方法的声明;//f方法表示类的功能
@end

@implementation 类名
方法的实现;
@end

2、一类事物不仅具有相同的特征还具有相同的行为

行为就是一个功能,C语言中使用函数来表示一个功能
OC的类具有的行为,我们使用方法来表示…

方法函数都表示一个功能.

3、无参数的方法

1)声明
	
	a、位置:在@interface的大括弧的外面
		
	b、语法:
@interface Person : NSObject
			{
				NSString *name;
				int age;
			}
			
			-(void)run;

			@end

			@implementation Person
		
			@end
	     -(返回值类型)方法名称;
	     -(void)run;
	表示声明了一个无返回值并且无参数的方法,方法的名字叫做run

2)实现
	
	a、位置:在@implementation之中实现

	b、实现的语法:
		将方法的声明拷贝到@implementation之中,去掉分号,追加一对大括弧{},将方法实现的代码写在大括弧之中

3)调用
	a、方法是无法调用的,因为类是不能直接使用的,必须先创建对象,那么这个对象中就有类中的属性和方法了,就可以调用对象的方法了
int main (int argv ,const char * argv[])
		{
			Person *p1 = [Person new];
			[p1 run];

			return 0 ;
		}
	[对象名 方法名];

4、带一个参数的方法

1)声明
	a、位置:在@interface的大括弧外面

	b、语法:
	-(返回值类型)方法名称:(参数类型)形参名称;
	-(void)eat:(NSString *)foodName;

	定义了一个方法,这个方法没有返回值,
	这个方法分名字叫做eat:
	这个方法有一个参数,类型是NNString *类型的,参数的名字叫做foodName

2)实现
	
	a、位置:在@implementation之中实现
-(void)eat:(NSString *)foodName
		{
			NSLog(@“主人你给我的%@真好吃。”,foodName)
		}
	b、实现语法:
		将方法的声明拷贝到@implementation之中,去掉分号,追加一对大括弧{},将方法实现的代码写在大括弧之中

	
3)调用
	a、方法是无法调用的,因为类是不能直接使用的,必须先创建对象,那么这个对象中就有类中的属性和方法了,就可以调用对象的方法了
	
	b、调用语法:
[p1 eat:@“红烧排骨”]
		[对象名 方法名:实参];

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

5、带多个参数的方法

1)声明
	a、位置:在@interface的大括弧外面

	b、语法:
	-(返回值类型)方法名称:(参数类型)形参名称1:(参数类型)形参名称2:(参数类型)形参名称3;
	-(int)sum:(int)num1:(int):num2;
	表示声明了一个方法,这个方法的返回值类型是int类型的
	方法的名称叫做sum:
	有两个参数,参数类型都是int类型,参数名称叫做num1 num2

2)实现
	
	a、位置:在@implementation之中实现

	b、实现语法:
		将方法的声明拷贝到@implementation之中,去掉分号,追加一对大括弧{},将方法实现的代码写在大括弧之中
-(int)sum:(int)num1:(int):num2
			{
				int num3 = num1 + num2;
				return num3;
			}
3)调用
	
	a、方法是无法调用的,因为类是不能直接使用的,必须先创建对象,那么这个对象中就有类中的属性和方法了,就可以调用对象的方法了
	
	b、调用语法:
	int sum = [p1 sum:10 :20]
	NSLog(@“sun=%@,sum);
	[对象名 方法名 :实参1:实参2:实参3];

6、带参数的方法声明的规范

1)如果方法只有一个参数,要求最好这个方法的名字叫做xxxWith:或者 xxxWithxxx
	eatWith:        eatWithFood:

	这样写的话,那么调用方法的时候看起来就像是一条完整的语句,提高了代码的阅读性

	遵守的规范:就是让我们的方法调用的时候看起来像一条完整的语句

2)如果方法有多个参数,建议这个方法的名称:

	方法名With:(参数类型)参数名称 and:(参数类型) and:(参数类型)参数名称;
	-(int)sumWith:(int)num1 and:(int)num2;

猜你喜欢

转载自blog.csdn.net/wenyu_Saitama/article/details/106903919