萬類之源——object
self——表明呼叫這個方法的物件本身,在呼叫該方法的時候不需要實參與self對應
例項的建立
class dog(object):
def setname(self,name):
self.name = name
def greet(self):
print "hi,i am called %s." %self.name
if __name__ == '__main__':
dog = dog()
dog.setname("paul")
dog.greet()
__init__表示每個類都預設自動呼叫的乙個方法
當類被呼叫後,python將建立例項物件
建立完物件以後,python自動呼叫第乙個方法為__init__()
例項物件作為方法的第乙個引數(self)被傳遞進去,呼叫類建立例項物件時的引數都傳給__init__()
class dog(object):
def __init__(self,name):
self.name = name
def greet(self):
print "hi,i am called %s." %self.name
if __name__ == '__main__':
dog = dog("paul")
dog.greet()
class dog(object):
counter = 0
def __init__(self,name):
self.name = name
dog.count += 1
def greet(self):
print "hi,i am called %s,my number is %d" %(self.name,%dog.counter)
if __name__ == '__main__':
dog = dog("paul")
dog.greet()
子類在繼承父類的方法和屬性時,也可以對父類的方法進行改寫
class dog(object):
counter = 0
def __init__(self,name):
self.name = name
dog.count += 1
def greet(self):
print "hi,i am called %s,my number is %d" %(self.name,%dog.counter)
#overridepro
class barkingdog(dog):
def greet(self):
print "woof,i am called %s,my number is %d" %(self.name,%dog.counter)
if __name__ == '__main__':
dog = barkingdog("paul")
dog.greet()
python物件導向基礎 python物件導向基礎
面向過程與物件導向 面向過程的程式設計的核心是過程 流水線式思維 過程即解決問題的步驟,面向過程的設計就好比精心設計好的一條流水線,考慮周全什麼時候處理什麼東西。優點 極大降低了寫程式的複雜度,只需要順著要執行的步驟,堆疊 即可。缺點 一套流水線或者流程就是解決乙個問題,牽一髮而動全身。應用場景 一...
Python之物件導向 物件導向基礎
一 面向過程 物件導向對比 1 面向過程 根據業務邏輯從上到下寫壘 2 函式式思想 將某功能 封裝到函式中,日後便無需重複編寫,僅呼叫函式即可 3 物件導向 對函式進行分類和封裝 1 2 3一步一步抽象,函式式是走向物件導向的中間步驟 函式式的應用場景 各個函式之間是獨立且無共用的資料 物件導向程式...
python物件導向基礎
類是例項的模版,例項是根據類建立的乙個具體物件,每個物件都有相同的方法,但是各自的資料不同。如果要讓內部屬性不被外部訪問,可以把屬性的名稱前加上兩個下劃線 在python中,例項的變數名如果以 開頭,就變成了乙個私有變數 private 只有內部可以訪問,外部不能訪問 當子類和父類都存在相同的run...