我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:彩库宝典 > 动多态 >

QF——OC的多态动态绑定及实现原理

归档日期:07-04       文本归类:动多态      文章编辑:爱尚语录

  多态:允许不同的类定义相同的方法,OC能自己判断当前类所对应的方法,不会混乱。

  多态:父类的指针可以指向子类的对象。这句话一定要深刻理解,请看几行代码:

  虽然该obj前面是Animal类,也就是说它被声明是Animal类的一个指针,但是在运行 [obj eat];这行时才知道它其实是Dog类型的,该obj指针实际上却是指向子类Dog的对象。也就说它在运行时,实际上调用的是Dog类里的那个eat方法。这就是多态。

  OC中的每个对象默认都有一个属性,即isa指针。它指向了一个“类对象”(object-class),这个对象是在编译的时候由编译器生成的。它里面存储了类的信息,专门用来描述类。当程序运行时,它作为类的一个实例的属性,它会动态的告诉对象“你属于哪个类,你有什么方法等”。。。

本文链接:http://dalezaragoza.com/dongduotai/585.html