OC中的限定词 @public、@private、@protected
它们仅能修饰实例成员变量,不能修饰类变量,更不能修饰方法。
@public 公共的:任何情况都可以访问
@private 私有的:仅在本类中访问
@protected 受保护的:在本类和该类的子类中可以访问,在类外是不推荐的,但是也可以访问
使用方法:
@interface myClass : Object{
@public
int publicVar;
@private
int privateVar;
@protected
int protectedVar;
}
@end
类变量与类方法
static int count;
//类变量
@interface myClass : Object{
id
data;
//实例成员变量(成员变量)
NSString * name;
//实例成员变量(成员变量)
}
- (id)initWithString:(NSString *)One;
//实例方法
+ (myClass *)createMyClassWithString:(NSString *)One;
//类方法
+ (void) initialize
//初始化类方法(类构造函数)(用于初始化类变量)
@end
注:init方法是默认的构造方法,initialize方法是类构造方法,如果有+(void)initialize方法时,当该类实例化的第一次会被调用该方法,而且仅在该类初次使用调用一次,以后则不被调用
init方法中可以访问类变量,initialize方法不能访问实例变量