load和initialize的区别

initializeload都能达到这个效果;为什么选择load

  1. 在子类没有实现initialize时候,父类的initialize会执行多次,假如在这里做替换就会出现偶数次替换,方法替换失效的问题;
  2. 类别中实现了initialize会覆盖类中的方法,如果有多个类别都在initialize中做处理的话,那么只有一个会生效其他都会失效,具体哪个生效看compile source中哪个在最后。

以上这两个副作用,load都没有,所以还是选择在load中处理,虽然load会很微弱的影响启动时间。


原文:
作者:jayhe
链接:https://www.jianshu.com/p/7daa1a95d106
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
原文地址:https://www.cnblogs.com/huangzizhu/p/12259427.html