1. 程式人生 > >Python Class 繼承

Python Class 繼承

class C:
    def f1(self):
        print('C')
        # super(C,self).f1() 
        # 2、super()執行父類中的方法,如果沒有父類而這同關係中也執行完,就會接著執行不同關係的類

class A(C):
    def f1(self):
        print('A')
        super(A,self).f1() # 1、super()按照順序執行父類中的方法。
        # B.f1(self) # 3、指定執行不是關係中的方法

class B:
    def f1(self):
        print('B')

class Foo(A,B):
    pass


obj = Foo()
obj.f1() # obj.f1(obj) 在執行類方法時,會自動將類傳給執行的方法。

'''
    手動執行類方法:
    obj = Foo()
    Foo.f1(obj)
'''

'''
    1、獲得結果:
    A
    C
'''
'''
    2、獲得結果:
    A
    C
    B
'''
'''
    3、獲得結果:
    A
    B
'''

ps:在Python中,class的多繼承,是先執行左邊class中所有關係,包括繼承關係。

self 是誰?self永遠是呼叫方法的物件。