我們沒有為我們的應用程式類定義乙個__init__()方法。在python中,這就意
你定義你自己的__init__()方法,不要忘了呼叫其基類的__init()__方法,示例如下:
自動呼叫父類的__init__方法:
# !/usr/bin/env python
# -*- coding: utf-8 -*-
class a(object):
def __init__(self):
print '----------call a---------------'
self.a = 5
def function_a(self):
print('i am from a, my value is %d' % self.a)
class b(a):
b=122
# print '-------------call b---------------'
# def __init__(self):
# # a.__init__(self) # 此處修改了。如果類a的__init__方法需要傳參,也需要傳入對應的引數
## self.b = 10
def function_b(self):
print('i am from b, my value is %d' % self.b)
self.function_a() # 呼叫類a的方法,出錯
if __name__ == '__main__':
b = b()
b.function_b()
c:\python27\python.exe c:/users/tlcb/pycharmprojects/untitled/wxpython/t6.py
----------call a---------------
i am from b, my value is 122
i am from a, my value is 5
重寫父類方法和呼叫父類方法
class animal object def eat self print 吃 def drink self print 喝 class dog animal def bark self print 汪汪叫 print 汪汪叫 print 汪汪叫 print 汪汪叫 print 汪汪叫 class...
重寫 呼叫父類方法
所謂重寫,就是子類中,有乙個和父類相同名字的方法,在子類中的方法會覆蓋掉父類中同名的方法 class cat object def sayhello self print halou 1 class bosi cat def sayhello self print halou 2 bosi bosi...
super 呼叫父類方法
詳解python的super 的作用和原理 python 中物件的定義很怪異,第乙個引數一般都命名為self,用於傳遞物件本本身,而在呼叫的時候則不必顯示傳遞,系統會自動傳遞 今天我們介紹的主角是super 在類的繼承裡面super 非常常用,它解決了子類呼叫父類方法的一些問題,父類多次被呼叫只執行...