python 是一門物件導向的設計語言,與此對應的就是面向過程程式設計與函式式程式設計
物件導向的乙個優點就是更好的增強**的重用性。
面向過程程式設計可以簡單的理解為:重點在步驟,將乙個任務完成所需要的所有步驟羅列出來
物件導向則可以理解為:重點在物件,打個比方的話就是在人,完成一項任務需要哪些人,這些人再去負責做具體的事情,將所有人組合在一起就完成了這個任務。
我們通過封裝步驟為方法,封裝方法為物件,來執行任務。真實世界中的事物從來都不是單獨的,每個事物都有自己的類別,而函式是真實世界的對映,對於同一類的事物,同一類事物具有某些相同的特徵,我們無需每次對同一類的事物建立相同的特徵,而只需要建立乙個大類,在這個大類中將某些共同屬性封裝在一起,然後通過繼承的方式去使用這些屬性或者方法,對於一些特殊屬性特殊方法,我們只需單獨建立它們即可——一切重複性的東西都沒有必要存在兩份。
下面這個例子定義了乙個動物的大類,它具有一些共同屬性和方法,以及兩個繼承它的貓類和狗類,它們具有各自特殊的方法。
1class animal(object):#定義父類animal
23def
__init__(self,name,sound):#
初始化屬性 name sound
45 self.name =name
6 self.sound =sound
7 self.talk() #
一例項化即呼叫talk()方法
89def talk(self):#
定義父類方法,用於打招呼
10print("
hello,i am %s,%s
" %(self.name,self.sound))
1112class dog(animal):#
繼承父類animal
1314def jump(self):#
增加子類新方法
15print("
i love jumping!")
1617class cat(animal):#
繼承父類animal
1819def sleep(self):#
增加子類新方法
20print("
i love sleeping")
2122
23 catt = cat("
cat","
miao~miao~miao
") #
例項化cat類,得到catt物件
24 catt.sleep() #
呼叫物件方法
2526 dogg = dog("
dog","
wang~wang~wang")
27 dogg.jump()
執行結果:
hello,i am cat,miao~miao~miaoi love sleeping
hello,i am dog,wang~wang~wang
i love jumping!
python學習 物件導向 類 物件 繼承
約定成俗的類的命名方式 1 首字母大寫 2 為了與其他進行區分盡量避免使用 建議採用studenthomework小駝峰的格式 類的常規格式 class student 定義變數 資料成員 student sum 80 類變數 建構函式 def init self,name,age 其中的self....
Python物件導向 類的繼承
基本概念 物件導向三要素之一,繼承inheritance 上例可以看出,通過繼承 貓類不同寫 直接繼承了父類的屬性和方法。繼承 定義格式如下 class 子類名 基類1 基類2,語句塊如果類定義時,沒有基類列表,等同於繼承自object。在python3中object類是所有物件的根基類 class...
python物件導向 類的繼承
子類 son類 父類 father類 以下案例均表示son類繼承父類的一些屬性和初始化引數構造等。5個模組 1 直接呼叫父類屬性方法 2 重寫父類屬性方法 3 強制呼叫父類私有屬性方法 4 呼叫父類的 init 方法 5 繼承父類初始化過程中的引數 class father def init sel...