#!/usr/bin/python
class Parent(object): # define parent class
parentAttr = 100
def __init__(self):
print "Calling parent constructor"
def parentMethod(self):
print 'Calling parent method'
def setAttr(self, attr):
Parent.parentAttr = attr
def getAttr(self):
print "Parent attribute :", Parent.parentAttr
class Child(Parent): # define child class
def __init__(self):
print "Calling child constructor"
def childMethod(self):
print 'Calling child method'
c = Child() # instance of child
ここで子クラスのインスタンスを作成して呼び出しました。親クラスのコンストラクターを呼び出していないようです。出力は次のようになります。
Calling child constructor
たとえばC++では、派生クラスのコンストラクターを呼び出すと、基本クラスのコンストラクターが最初に呼び出されます.Pythonでこれが起こらないのはなぜですか?