class dog(animal):
def __init__(self,name):
animal.__init__(self,name)
def bark(self):
print self.name," can bark"
d = dog("xiao li")
d.bark()
上面定義了乙個類animal,它以class 關鍵字開頭,類中的方法用def關鍵字開頭,類中的init是類的構造方法,在生成例項的時候會自動呼叫,類中還定義了show方法,它用於列印例項的變數name,每個方法都帶有引數self,它可以認為是當前的物件自身。
class animal():
def __init__(self,name):
self.name = name
print "this is super class",name
def show(self):
print self.name," is beautifull"
a = animal("xiao zhang")
a.show()
上面的dog類繼承自基類animal,它的構造方法中呼叫了基類的構造方法animal.__int__(); 這一點需要注意,python的派生類例項化物件時,並不會自動基類的構造方法。派生類物件會首先在本類查詢init方法,如果找到就呼叫然後完成例項化,如果找不到,則會在基類中尋找init方法完成例項化。
python的多重繼承
class base1():
def __init__(self):
print "call the class class1"
def show(self):
print "the method base1 show"
class base2():
def __init__(self):
print "call the class class2"
class base3(base1,base2):
#def __init__(self):
#base1.__init__(self)
#base2.__init__(self)
#print "call the class base3"
pass
b1 = base1()
b2 = base2()
b3 = base3()
b3.show()
派生類在例項化時,首先查詢本類中的構造方法,如果有則呼叫本類的構造方法,如果沒有,則呼叫第乙個呼叫基類的構造的方法,如上面的b1如果不定義構造方法,會呼叫base1的構造方法。除了構造方法外,其它方法的呼叫方式與此類似,如b1.show(),會呼叫base1中的show()方法。 python物件的繼承和重寫
class dog animal def init self,name animal.init self,name def bark self print self.name,can bark d dog xiao li d.bark 上面定義了乙個類animal,它以class 關鍵字開頭,類中的...
python重寫 python的繼承和重寫
class classname baseclasslist 類的幫助資訊 staement 類體 classname 用於指定類名 baseclasslist 用於指定要繼承的基類 也就是父類 可以有多個,類名之間用逗號分隔 類的幫助資訊 用於指定類的文件字串,定義該字串後,在建立類的物件時,輸入類...
繼承和重寫
1.繼承是從已有的類中派生出新的類,新的類能吸收已有類的資料屬性和行為,並擴充套件新的能力 繼承的語法格式 修飾符 class 子類 extends 父類 如 public class englishbook extends book 繼承的優點 提高了 的復用性 降低程式的耦合性提高可維護性 繼承...