Contents
  1. 1. +load与+initialize
    1. 1.1. + load
      1. 1.1.1. 使用场景
    2. 1.2. + initialize
      1. 1.2.1. 使用场景

+load与+initialize

+ load

  • 当类对象被引入时,runtime会向每一个类对象
  • load方法会在每一个类甚至分类被引入时仅调用一次.
  • 调用的顺序是:
    • 父类优先于子类,子类优先于分类
  • load方法不会被自动继承
    • 子类中没有+load方法时系统不会多次调用父类+load

使用场景

  • Method Swizzle

+ initialize

  • 第一次使用这个类的时候会调用这个方法-懒加载
    • 会在第一次使用第一个类方法或实例方法之前被调用

使用场景

  • 初始化全局变量或静态变量
  • load方法会被子类/分类继承
    • 如果子类没有实现+initialize方法,会调用父类的+initialize方法
Contents
  1. 1. +load与+initialize
    1. 1.1. + load
      1. 1.1.1. 使用场景
    2. 1.2. + initialize
      1. 1.2.1. 使用场景