天天看點

python什麼是多态_Python中的多态是什麼

多态的概念其實不難了解,它是指對不同類型的變量進行相同的操作,它會根據對象(或類)類型的不同而表現出不同的行為。

python什麼是多态_Python中的多态是什麼

事實上,我們經常用到多态的性質,比如:>>> 1   2

3

>>> 'a'   'b'

'ab'

可以看到,我們對兩個整數進行   操作,會傳回它們的和,對兩個字元進行相同的   操作,會傳回拼接後的字元串。也就是說,不同類型的對象對同一消息會作出不同的響應。

相關推薦:《Python視訊教程》

再看看類的例子:class Animal(object):

def __init__(self, name):

self.name = name

def greet(self):

print 'Hello, I am %s.' % self.name

class Dog(Animal):

def greet(self):

print 'WangWang.., I am %s.' % self.name

class Cat(Animal):

def greet(self):

print 'MiaoMiao.., I am %s' % self.name

def hello(animal):

animal.greet()

看看多态的使用:>>> dog = Dog('dog')

>>> hello(dog)

WangWang.., I am dog.

>>>>>> cat = Cat('cat')

>>> hello(cat)

MiaoMiao.., I am cat

可以看到,cat 和 dog 是兩個不同的對象,對它們調用 greet 方法,它們會自動調用實際類型的 greet 方法,作出不同的響應。這就是多态的魅力。

相關推薦:

Python中類的繼承是什麼