Python是一种纯粹的面向对象语言。面向对象编程中的四大特征分别是:抽象、封装、继承和多态。多态根据上下文,对象可以采用多种形式。程序将确定该对象每次执行所需的含义或用法,从而减少了重复代码。
我国有句俗语:“龙生九子,各有不同”。这就是多态。多态是同一类事物具有的多种形态。多态是面向对象编程的重要特点之一。
Python本身就是一种多态语言:
上述程序中,参数a和b可以接收不同的数据类型。当a和b同时是数字类型时,add()函数将进行加法运算;当a和b同时是字符串类型或列表类型时,add()函数将进行拼接运算。
下面用一个示例来介绍计算机编程语言中的多态。
上述程序中,定义了四个类,分别是Animal类、People类、Dog类和Pig类,其中People类、Dog类和Pig类都继承了Animal类。这就体现了同一类事物的多种形态。这四个类都有一个talk()方法。试着调用talk()方法,代码如下:
上述程序中,调用Func()函数为同一个操作,但调用的参数是不同的,即调用了不同的实例作为参数。由运行结果可知,有不同的类创建不同的实例,以不同的实例作为参数时,调用ta