load和initialize方法
+ load方法
当类第一次被加载时会调用,且只调用一次.在加载阶段,如果实现了load方法,那么系统就会调用它。分类里也可以定义此方法,类load方法要比分类中的先调用。与其他方法不同,load方法不参与覆写机制
+ initialize
首次使用某个类之前,系统会向其发送initialize消息。由于此方法遵从普通的复写规则,所以通常应该在里面判断当前要初始化的是哪个类.
+ (void)load{
NSLog(@"方法名为%s",__func__);
}
+ (void)initialize {
//只有这个类是本类才调用,是子类不调用,不然还是会调用多次.
if (self == [ClassName self]) {
// ... do the initialization ...
NSLog(@"方法名为%s",__func__);
}
}
网友评论