1. 程式人生 > >python 多繼承

python 多繼承

logs bsp def cat elf bject arr fly 可能

  1. 多繼承:(通過繼承子類實現父類的功能)

  Animal 可能有不同的分類:

  Animal ------Mammal

      ------Bird

   Animal ------run

   ------fly

  對於每個動物 Dog,Cat ,Parrot可能 第一種分類,也可能同時繼承第二種分類。笨方法是定義RunMammal,FlyMammal,FlyBird。但是需要更多分類時,顯然不合理。------多繼承

  首先,主要的類層次

  

class Animal(object):
    pass
class Mammal(Animal):
    
pass class Bird(Animal): pass

然後,設計功能類:

class Run(object):
    def run(self):
        print(Running)
        
class Fly(object):
    def fly(self):
        print(Flying)

最後,子類:

class Dog(Mammal,Run):
    pass

這就實現了多重繼承,這種設計方法稱為MixIn。

 

python 多繼承