繼承:通過子類繼承父類信息而達(dá)到子類可以擴展功能的目的
10年積累的成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有淇縣免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
多重繼承:通過子類繼承多個類
一、多重繼承一類
套用廖雪峰的例子:
https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868200511568dd94e77b21d4b8597ede8bf65c36bcd000
Dog - 狗狗;
Bat - 蝙蝠;
Parrot - 鸚鵡;
Ostrich - 鴕鳥。
按哺乳和鳥類分:
按跑和飛分:
總的:
程序:
#!/usr/bin/python
# -*- coding: utf-8 -*-
class Animal(object):
pass
# 大類:
class Mammal(Animal):
pass
class Bird(Animal):
pass
#功能
class Runnable(object):
def run(self):
print('Running...')
class Flyable(object):
def fly(self):
print('Flying...')
# 各種動物:
class Dog(Mammal, Runnable):
pass
class Bat(Mammal, Flyable):
pass
class Parrot(Bird, Flyable):
pass
class Ostrich(Bird, Runnable):
pass
dog = Dog()
dog.run()
運行結(jié)果:Running...
二、多重繼承二類:Mixin
除了大類,其他繼承的類,只要在類名后面+Mixin就可以了。
程序:
#!/usr/bin/python
# -*- coding: utf-8 -*-
class Animal(object):
pass
# 大類:
class Mammal(Animal):
pass
class Bird(Animal):
pass
#功能
class RunnableMixin(object):
def run(self):
print('Running...')
class FlyableMixin(object):
def fly(self):
print('Flying...')
# 各種動物:
class Dog(Mammal, RunnableMixin):
pass
class Bat(Mammal, FlyableMixin):
pass
class Parrot(Bird, FlyableMixin):
pass
class Ostrich(Bird, RunnableMixin):
dog = Dog()
dog.run()
最后發(fā)現(xiàn),一類和二類沒啥區(qū)別。。。。。。逗我呢。。。。。。。Mask一下,日后再回頭看。