美文网首页
isa-swizzling到底为何物?

isa-swizzling到底为何物?

作者: XiaoYin | 来源:发表于2016-08-30 12:10 被阅读126次

isa-swizzling到底为何物~

抱着学习的心态,我想对它一探究竟。

isa-swizzling其实就是一种isa混编技术。在Apple的官方网站有关于KVO实现机制的解释,其中有提到这个。

apple对于kvo实现机制的解释

apple关于kvo的解释中可以看出来kvo的实现也是采用了这种技术~

isa是OC中每一个对象都有的指针~ 关于这个指针想要了解更多可以戳runtime对象模型

isa-swizzling通过修改isa指针的值,使它指向另一个类来达到自己的目的。KVO就是为添加了属性观察的类,动态生成了一个新的类继承于原来的类,通过重写setter方法,在setter方法中调willChangeValueForKey和didChangeValueForKey来通知对象属性值发生改变,并且修改了对象的isa指针,使它指向了新的类,当值修改完成并且通知对象后,会再次把对象的isa指针指向它原来的类。

以上个人理解~ 欢迎补充和指正~😁

相关文章

  • isa-swizzling到底为何物?

    isa-swizzling到底为何物~ 抱着学习的心态,我想对它一探究竟。 isa-swizzling其实就是一种...

  • 问题:KVO的底层实现原理

    KVO是基于runtime机制实现的,KVO运用了一个isa-swizzling技术。isa-swizzling就...

  • 问题:apple用什么方式实现对一个对象的KVO?

    KVO是基于runtime机制实现的,KVO运用了一个isa-swizzling技术。isa-swizzling就...

  • KVC 和KVO

    1)KVC 底层实现原理 KVC运用了一个isa-swizzling技术。isa-swizzling就是类型混合指...

  • isa-swizzling

    关于讲解isa-swizzling的不错的文章

  • isa-swizzling

    那么,既然是isa替换,那主角当然就是isa啦。那么这个技术出现在什么场景呢?其实这个技术在官方文档中关于KVO的...

  • 时间到底为何物

    是啊,今天就是七月的最后的一天了,纵使你有百般的不舍,都阻止不了它;明明知道天空每天都会暗下去,却还是贪恋那黄昏的...

  • 到底自卑为何物?

    有没有那么一个瞬间你觉得自己一无是处? 这个想法从何而来? 生活里我们常听到身边的人说,我有点自卑。每个人在生活中...

  • 爱情到底为何物

    经常在想,爱情,到底是什么?在现在的年龄,谈爱,应该是怎样的呢?确实,一段好的爱情应该是能使人上进的,这我不否认,...

  • \陪伴,到底为何物?\

    看着熟睡中的H,内心竟然有些许不舍。 不知道为何自己会有这种伤感。我们相识于五年前,一直相处的很好。 看目前的状况...

网友评论

      本文标题:isa-swizzling到底为何物?

      本文链接:https://www.haomeiwen.com/subject/euvfettx.html