多态基本概念

Posted iFat的笔记本

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多态基本概念相关的知识,希望对你有一定的参考价值。

1.什么是多态?

  • 什么是多态:多态就是某一类事物的多种形态

    • 猫: 猫-->动物
    • 狗: 狗-->动物
    • 男人 : 男人 -->人 -->高级动物
    • 女人 : 女人 -->人 -->高级动物
  • 程序中的多态:父类指针指向子类对象

2.多态的条件

  • 有继承关系
  • 子类重写父类方法
  • 父类指针指向子类对象
    狗 *g = [狗 new];
    动物 *a = [狗 new];
    猫 *c = [猫 new];
    动物 *a = [猫 new];
    
  • 表现:当父类指针指向不同的对象的时候,通过父类指针调用被重写的方法的时候,会执行该指针所指向的那个对象的方法

3.多态的优点

  • 多态的主要好处就是简化了编程接口。它允许在类和类之间重用一些习惯性的命名,而不用为每一个新的方法命名一个新名字。这样,编程接口就是一些抽象的行为的集合,从而和实现接口的类的区分开来。

  • 多态也使得代码可以分散在不同的对象中而不用试图在一个方法中考虑到所有可能的对象。 这样使得您的代码扩展性和复用性更好一些。当一个新的情景出现时,您无须对现有的代码进行改动,而只需要增加一个新的类和新的同名方法。

以上是关于多态基本概念的主要内容,如果未能解决你的问题,请参考以下文章

C++多态的基本概念

阿里云名师课堂Java面向对象开发64:多态性

47.多态

多态性(polymorphism),封装性(encapsulation),内聚(cohesion)以及耦合(coupling)的基本概念

面向对象程序设计-继承与多态

三大特性:封装,继承,多态