+ (void)load
1.+load方法加載順序:父類> 子類> 分類 (load方法都會(huì)加載)
注意:(如果分類中有A,B,順序要看A,B加入工程中順序) 峡碉,
可能結(jié)果:( 父類> 子類> 分類A> 分類B ) 或者( 父類> 子類> 分類B> 分類A )
2.+load方法不會(huì)被覆蓋(比如有父類,子類,分類A畔规,分類B,這四個(gè)load方法都會(huì)加載)。
3.+load方法調(diào)用在main函數(shù)前恨统。
+ (void)initialize
+initialize方法加載順序有以下4種情況
(1)分類 (子類沒有initialize方法叁扫,父類存在或者沒有initialize方法)
(2)分類> 子類 (多個(gè)分類就看編譯順序,只有存在一個(gè))
(3)父類> 子類 (分類沒有initialize方法)
(4)父類 (子類畜埋,分類都沒有initialize方法)
總結(jié)+initialize:
1.當(dāng)調(diào)用子類的+ initialize方法時(shí)候,先調(diào)用父類的,如果父類有分類, 那么分類的+ initialize會(huì)覆蓋掉父類的莫绣。
2.分類的+ initialize會(huì)覆蓋掉父類的
3.子類的+ initialize不會(huì)覆蓋分類的
4.父類的+ initialize不一定會(huì)調(diào)用, 因?yàn)橛锌赡芨割惖姆诸愔貙懥怂?/p>
5.發(fā)生在main函數(shù)后。
————————————————
版權(quán)聲明:本文為CSDN博主「臨海聽風(fēng)V」的原創(chuàng)文章悠鞍,遵循CC 4.0 BY-SA版權(quán)協(xié)議对室,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/samuelandkevin/article/details/104398068