------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
1.类方法描述 Objective-C中的类可以声明两种类型的方法:实例方法和类方法。
实例方法就是在一个类的具体实例范围内调用。也就是说在使用实例方法时候,必须先创建一个类的实例。 类方法不需要事先创建一个实例。
类方法开头是+表示,它不依赖于实力对象。 2.类方法调用
【类名 方法名】; 类方法可以与实例方法同名。实例方法由实例对象访问调用,类方法要通过类里访问调用,不会有交叉相互影响。 类方法也可以是从父类继承而来,子类可以重写类方法。
类方法和实例方法一样在interface里声明,在implementation里实现。
类方法只能被类调用执行,向实例对象发送类方法是不能被触发执行的。
在类方法里使用了self,这个self执行的类对象class object而不是实例对象instance object。
3.类方法的有点:
注意:在类方法中,不能调用类的成员变量。在对象方法中可以使用类的成员变量。
4.类方法和对象方法比较
1)对象方法: 以-号开头 可以使用成员变量。用对象调用对象方法 对象方法可以调用当前对象或者其他对象的方法(是通过将对象作为参数传入方法)。对象方法可以调用类方法。 2)类方法: 以+开头 不可以使用成员变量 用类名调用类方法
类方法可以调用对象方法(是通过将对象作为参数传入方法)
类方法不可以调用自身,会造成死循环。
5.类方法的应用 如果我们调用一个方法,该方法中不需要使用成员变量,那么我们可以将该方法声明为类方法。
@interface Calculator : NSObject {
int_result;
int_num1;
int_num2;
}
//声明一个类方法用于计算两个数的和
+(int)sum Num1:(int)num1 andNum2:(int)num2;
@end
@implementation Calculator
//通过类方法计算两个数的和
+(int)sumNum1:(int)num1 andNum2:(int)num2{
return num1+num2;
}
@end
|