iOS 方法查找规则

superclass,class,category(多个category)

load

比main函数还要先执行。
调用顺序:
super class ->
current class ->
category1 class -> category2 class,按照compile souces中的文件顺序依次全都调用。

initialize

类被调用的时候调用initialize
调用顺序:
super class -> 父类最先被调用
current class -> category1 class -> category2 class,category2 class, 按照compile souces中的文件顺序,最后一个文件中的方法被唯二调用。维二指:多个category的initialize被最后一个category的initalize覆盖。current class,最后一个current class category 执行initalize。

class method

调用顺序:
super class ->
current class ->
category1 class -> category2 class, 按照compile souces中的文件顺序,最后一个文件中的方法被唯一调用。

instance method

跟class method相同

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,814评论 0 9
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • Objective C类方法load和initialize的区别过去两个星期里,为了完成一个工作,接触到了NSOb...
    亦晴工作室阅读 1,354评论 0 10
  • load 和 initialize 两个方法算是两个特殊的类方法了,今天偶然从草稿箱中看到还有本篇未完成的博文,如...
    RITL阅读 1,540评论 8 13
  • 2017-11-21 红旗小散日记 19世纪是人类历史中非常重要的一个世纪,这个世纪向下承接了18世纪第一次...
    红旗小散阅读 4,645评论 0 0