所謂用繼承的方式完成包裝,其實很簡單,我們舉個例子。
改寫系統自帶的list中append的方法:
1> class List(list):
def append(self,obj):
if type(obj) is str:
super().append(obj)
else:
print('不是str型別不能append')
l=List()
l.append('hello')
print(l)
輸出結果:
['hello']
2> class List(list):
def append(self,obj):
if type(obj) is str:
super().append(obj)
else:
print('不是str型別不能append')
l=List()
l.append(2)
print(l)
輸出結果:
不是str型別不能append
[]
看到上面兩種程式碼寫法最後的輸出結果了吧?你看,是不是就實現了改寫append方法,只把字串型別的資料加入到列表中。這個就叫做用繼承的方式完成包裝。