1. 程式人生 > >Python 經典類和新式類

Python 經典類和新式類

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# 作者:Presley
# 郵箱:[email protected]
# 時間:2018-10-21
# 新式類和經典類

class A:
n = "A"
def f2(self):
print("from A")

class B(A):
n = "B"
def f1(self):
print("from B")
# def f2(self):
# print("f2 from B")

class C(A):
n = "C"
def f2(self):
print("from C")

class D(B,C):
pass

d = D()
d.f1()
d.f2()#按照先去找B,沒有的話再去找C,C沒有的話再去找A。按照廣度優先的原則

#在老版本中經典類按照深度優先,新式類按照廣度優先,但是在3.0後無論經典類還是新式類全都按照廣度優先,因此上圖雖然是經典類但是還是廣度優先