类方法的概述:
回顾实例方法,
实例方法就是一个方法,它在类的一个具体实例的范围内执行,也就是说调用实例方法前,必须先创建类的一个实例
类方法
相比而言,类方法不需要创建一个实例
1)类方法以‘+’开头 如+(void)put
2)类方法只能由类来调用
3)类方法中不能访问成员变量,引文类方法由类来调用,并没有创建存储空间来存储类中的成员变量
4)调用格式[类名 类方法名]
5)类方法的好处和使用场合
不依赖于对象,执行效率更高
能用类方法解决的问题,尽量使用类方法
场合:当方法内部不需要使用到成员变量时,可以改为类方法
+表示类方法,就是类调用方法,不依赖与任何对象的方法
-表示实例方法,职能是对象可调用,依赖于任何对象的方法
例如 @interface Caculator:NSObject //类的声明
-(int)add:(int)num1 andnum2:(int) num2; //对象方法
+(int)add:(int)num1 andnum2:(int) num2; //类方法
@end
@implementation Caculator //类的实现
-(int)add:(int)num1 andnum2:(int) num2 //对象方法实现
{
return num1+num2;
}
+(int)add:(int)num1 andnum2:(int) num2 //类方法的实现
{
return num1+num2;
}
@end
……
//类的调用
……
Calculator *ca = [Caculator new];
int return = 0;
return = [ca add:12 andnum2:24]; //对象方法的调用-(int)add:(int)num1 andnum2:(int) num2;
return = [Caculator add:10 andnum2: 10]; //类方法的调用+(int)add:(int)num1 andnum2:(int) num2; |
|