类的继承与实例化的练习

 class A:
 def func(self):print('a')
 class B(A):
 def func(self):print('b')
 b = B()
 b.func() # b 自己有不用父类的


 class A:
 def func(self):print('a')
 class B(A):pass
 b = B()
 b.func() # a 自己没有用父类的


 class A:
 def func(self):print('a')
 class B(A):
 def func(self):
 A.func(self)
 print('b')
 b = B()
 b.func() # a,b 先执行B.func,调用了A.func打印a,然后回到B.func打印b


 class A:
 def func(self):print('a')
 class B(A):
 def func(self):
 print('b')
 A.func(self)
 b = B()
 b.func() # b,a


 class A:
 lst = []
 def func(self):
 self.lst.append(1)
 class B(A):
 lst = []
 def func(self):
 self.lst.append(2)
 b = B()
 b.func()
 print(A.lst) # []
 print(B.lst) # [2]


 class A:
 lst = []
 def func(self):
 self.lst.append(1)
 class B(A):
 def func(self):
 self.lst.append(2)
 b = B()
 b.func()
 print(A.lst) # [2]
 print(B.lst) # [2]

 class A:
 lst = []
 def __init__(self):
 self.lst = []
 def func(self):
 self.lst.append(1)
 class B(A):
 def __init__(self):
 self.lst= []
 def func(self):
 self.lst.append(2)
 b = B()
 b.func()
 print(A.lst) # []
 print(B.lst) # []

posted @ 2020-08-04 15:57  diracy  阅读(116)  评论(0编辑  收藏  举报