ios开发 oc 的类方法与对象方法

 

首先我们先来了解一下什么是类方法与对象方法。

对象方法:

 对象是由“-”开头。比如:-(void)Runner;

对象方法顾名思义只能由对象来调用 比如说:

@interface Person : NSObject

-(void)Runner;//对象方法

 @end;

int main()

{

Person *p=[Person new];//Person是一个类,它创建一个对象p。

[p Runner];//p调用Runner这个方法;

return 0;

{  

 

在对象方法中可以直接访问我们当前对象的成员变量 比如

@interface dog : NSObject

{

int _age;//成员变量

}

-(void)dogAge;

@end

@implementation dog

-(void)dogAge{

_age=20;//直接访问成员变量;

}

@end

 对象方法介绍到这里 。。。。。。

类方法:

类方法是由“+”开头  比如:+(void)Runner;

只能由类来调用: 比如 :

@interface Person : NSObject    

+(void)Runner;//对象方法

@end;

int main()

{

[Person Runner];

return 0;

{  

 类方法不需要使用成员变量;比如求2个数的和:

+ (int)sumN1:(int)n1 andN2:(int)n2;

 

类方法与对象方法同名:

通过上图可以看到虽然然方法名相同,但是一个是类方法一个是对象方法,也可以运行。

 

死循环:

@interface Person : NSObject

{

    int age;

}

+ (void)test;

@end

//只要在mian方法中调用就是死循环

+ (void)test

{

    [Person test];

}

 

类方法与对象方法可以相互调用:

 

posted @ 2017-06-18 09:14  最深萌死  阅读(1226)  评论(2编辑  收藏  举报