一、关于load方法:
1.class和category的+load方法都会被调用,是在main之前被调用。
2.调用顺序先主类的+load,再调用分类的+load。主类的调用顺序为先superclass,再subclass。分类的+load是根据代码读取的顺序。子类的+load可能会在前面。
二、关于initialize方法:
1.如果有分类,那么分类的方法列表会加载进主类的方法列表中,并且放在方法列表的头部,按照代码的读取顺序,最后读取到分类方法会放在最前面。按照顺序查找则最后加载进去的方法会被优先查找到(这也就是主类的同名方法会被分类【覆盖掉】的原因)。分类initialize会被调用,而主类的initialize不会被调用。
2.调用顺序依然是先superclass,再subclass
网友评论