load && initialize

2019-05-14  本文已影响0人  愤怒小鸟飞呀飞
@implementation Person (Run)

+(void)load{
    NSLog(@"Person (Run) load");
}

+(void)initialize{
    NSLog(@"Person (Run) initialize");
}


@end

2、不调用类的方法将不会调用
3、+initialize方法可能被调用不止一次
比如:子类未实现initialize方法,父类+initialize方法将调用两次
4、第一次使用类的时候才会调用
5、用线程安全的方式调用
6、父类调用早于子类

+(void)initialize{
    NSLog(@"Person initialize");
    if(self == [Person self]){
       NSLog(@"Person if initialize");
    }
}
上一篇 下一篇

猜你喜欢

热点阅读