赞
踩

1.定义一个类 分为类的定义和实现 @interface 类名 : NSObject { 属性 属性表示类的特征 } 方法的声明;方法比表示类的功能 @end @implementation 类名 类的实现 @end 2.一类事物不仅具有相同的特征还具有相同的行为 行为就是一个功能,C语言中使用函数来表示一个功能。 OC的类具有的行为,使用方法来表示, 方法和函数都表示一个功能 3.无参数的方法 1)声明 a.位置:在@interface的大括号外面。 b.语法: -(返回值类型)方法名称; - (void) run; 表示声明一个无返回值并且无参数的方法,方法名叫做run 2)实现 a.位置:在@implementation之中实现 b.语法的实现: 将方法的声明拷贝到@implementation之中,去掉分号追加大括号一对,将方法实现的 代码下载大括号之中 3)调用 a.方法是无法直接调用的。因为类是不能直接使用的。必须要想先创建对象, 那么这个对象中就有类中的属性和方法了,就可调用对象的方法 b.调用语法 [对象名 方法名]; 4.一个参数的方法。 1)声明 a.位置:在@interface的大括号外面。 b.语法: -(返回值类型)方法名称:(参数类型)形参名称; - (void)eat:(NSString *) foodName; 定义一个方法,没有返回值;方法名叫做eat; 这个方法有一个参数,参数是NSStriing *类型,参数名字叫做foodName. 2) 实现 a.位置:在@implementation之中实现 b.语法的实现: 将方法的声明拷贝到@implementation之中,去掉分号追加大括号一对,将方法实现的 代码下载大括号之中 3)调用 a.方法是无法直接调用的。因为类是不能直接使用的。必须要想先创建对象, 那么这个对象中就有类中的属性和方法了,就可调用对象的方法 b.调用语法 [对象名 方法名:实参]; 5.带多个参数的方法 1)声明 a.位置:在@interface的大括号外面。 b.语法: - (返回值类型)方法名称:(参数类型)形参名1:(参数类型)形参名2:(参数类型)形参名3; - (int)sum:(int)num1 : (int)num2; 声明一个方法,返回值类型为int,方法名为sum。 有两个参数,参数类型都为 int ,参数名称为num1 num2 2) 实现 a.位置:在@implementation之中实现 b.语法的实现: 将方法的声明拷贝到@implementation之中,去掉分号追加大括号一对,将方法实现的 代码下载大括号之中 3)调用 a.方法是无法直接调用的。因为类是不能直接使用的。必须要想先创建对象, 那么这个对象中就有类中的属性和方法了,就可调用对象的方法 b.调用语法 [对象名 方法名:实参1 :实参2 ;实参3]; 6.注意 在方法的实现中可以直接方法访问属性
#import <Foundation/Foundation.h> @interface Person : NSObject { @public NSString *_name; int _age; } //无参方法的声明 -(void)run; //有参数无返回值的声明 -(void)eat:(NSString *) foodName; //有参数有返回值的声明 - (int)sum:(int)num1 : (int)num2; @end @implementation Person //无参方法的实现 -(void)run{ NSLog(@"我在跑"); } //有参数无返回值的实现 -(void)eat:(NSString *) foodName{ NSLog(@"这个%@真好吃",foodName); } //有参数有返回值的实现 //相加 - (int)sum:(int)num1 : (int)num2{ int num3 =num1 +num2; return num3; } @end int main(int argc, const char * argv[]) { @autoreleasepool { Person *p1 = [Person new]; //无参无返回值调用 [p1 run]; //有参无返回值的调用 [p1 eat:@"红烧肉"]; //有返回值有参数的调用 int sum = [p1 sum:10 :20]; NSLog(@"sum = %d",sum); } return 0; }
到此结束!!!
自我监督 共同努力
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。