黑马程序员技术交流社区
标题: 类方法小结 [打印本页]
作者: wjy0916 时间: 2015-9-21 08:39
标题: 类方法小结
1)类方法的优点
a)节省内存空间
b)提高工作效率
c)作为工具方法
2)类方法的声明和实现
//声明一个类 Car
@interface Car : NSObject
{
@public
//声明属性速度
int _speed;
}
//声明对象方法run
-(void) run;
//声明不带参数的类方法
+(void) run;
//声明带参数的类方法
+(void) run:(int) speed;
@end
类方法的实现
@implementation Car
-(void) run{
NSLog(@"\n对象方法:车在以%d的速度废弛!",_speed);
}
//实现不带参数的类方法
+(void) run{
// NSLog(@“\n对象方法:车在以%d的速度废弛!",_speed); 错
// 方法中不能引用成员变量
NSLog(@"\n类方法:车在疾驰!!!!");
//类方法中可以调用自己或其他类的类方法
//1)直接用类名调用
// [Car run:250];
[self run:100];
}
//实现带参数的类方法
+(void) run:(int) speed{
NSLog(@"\n类方法:车在以%d的速度废弛!",speed);
}
@end
注意:类方法 或者 对象方法 调用 对象方法时
1)通过 对象作为参数来调用
//类方法调用对象方法(对象调用对象同理)
+(void) run:(Car *) C{
[C run];
}
2)在当前方法内 实例化一个对象来调用
//类方法调用对象方法(对象调用对象同理)
+(void) run{
Car *C = [Car new];
[C run];
}
注意:对象方法调用类方法,直接用类名调用
//对象方法调用类方法
-(void) run{
[Car run];
}
OC类方法的应用场景
当我们调用一个方法,该方法中不需要使用成员变量时,我们将该放啊发声明为类方法
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |