我之前看Runtime动态添加的时候注意到有些方法的前缀是objc_ 而有些是 object_ 还有class_   我想问下这些前缀的方法都是在什么时候会用到   或者说有什么区分方法么  

解决方案 »

  1.   

    这些要看具体函数是实现了什么功能
    总的来说,objc_打头的主要是针对类的操作,比如获取类,分配空间,获取协议什么的
    class_打头的主要是类内部的一些操作,比如获取实例变量,获取实例方法等等
    object_打头的主要就是对对象的一些操作了,比如对象拷贝,获取对象中实例变量的值等等
    具体什么时候会用到就要看需要什么了
      

  2.   

    runtime 可以选择学习swizzle   associated 比较常用  这是方向