#经典类
class My:
pass
#新式类
class My2(object):
pass
######python3里面没有任何的区别
例:
class A(object):
def x(self):
print('A')
class B(A):
# def x(self):
# print('B')
pass
class C(A):
def x(self):
print('C')
class D(B,C):
pass
s = D()
s.x()
*** 区别 *** 只限 python 2 ***
区别一、
经典类是 深度优先:
先找 B -> B 要是没有x()方法,则找 A -> 然后再找 C
新式类是 广度优先:
先找 B -> B 要是没有x()方法,则找 C -> 然后再找 A
区别二、
经典类不能用 super(用于自动帮你找到父类)
新式类可以用 super