多态就是用父类类型的指针创建子类的对象,比如Dog类继承了Animal类,下面都是多态:
Animal *aa = [Dog new];
Dog *dd = (Dog *)aa;
1.没有继承就没有多态
2.代码的体现:父类类型的指针指向子类对象
3.好处:如果函数\方法参数中使用的是父类类型,可以传入父类、子类对象
4.局限性:
父类类型的变量不能直接调用子类特有的方法。必须强转为子类类型变量后,才能直接调用子类特有的方法
多态就是用父类类型的指针创建子类的对象,比如Dog类继承了Animal类,下面都是多态:
Animal *aa = [Dog new];
Dog *dd = (Dog *)aa;
1.没有继承就没有多态
2.代码的体现:父类类型的指针指向子类对象
3.好处:如果函数\方法参数中使用的是父类类型,可以传入父类、子类对象
4.局限性:
父类类型的变量不能直接调用子类特有的方法。必须强转为子类类型变量后,才能直接调用子类特有的方法