python回顧(四)——面向物件
面向物件
面向物件概念
面向物件是一種程式設計思想,是對現實世界中的事物進行抽象的方式。應用到程式碼程式設計設計中,是一種建立現實世界事物模型的方式
面向物件和麵向過程區別
面向過程關注的是完成工作的步驟,面向物件關注的是誰能完成工作。面向物件是在完成工作的時候關注哪些個體能夠完成對應的工作,找到對應的個體即可完成對應任務
類
類的概念
類是一系列事物的統稱,同類事物必定具有相同的特徵。日常事物的特徵根據特性分為狀態和行為,對應到類中是變數和方法
特徵分類:
狀態——變數(成員變數)
行為——方法(成員方法)
統稱:類的成員
類定義語法格式
class 類名:
pass
說明:pass是空語句,不具有任何意義,僅為了保持程式結構完整性
類名的命名規則
類名命名規範:滿足大駝峰命名規則
物件
物件的概念
物件是類的具體表現形式,是實際存在的個體。(類是一系列事物的統稱)
建立物件語法格式
物件名 = 類名()
注意事項
物件的建立不限制數量,一個類可以建立任意個數的物件
成員變數
成員變數的概念
成員變數用於描述物件的固有狀態或屬性
定義成員變數語法格式(公有屬性/公有變數)
class 類名:
def __init__(self):
self.變數名1 = 值1
self.變數名2 = None
成員變數定義語法格式(獨有屬性/獨有變數)
物件名.變數名 = 值
公有變數與獨有變數的區別
公有變數在__init__方法中宣告,每個物件都具有該變數
獨有變數在建立物件後宣告,只有當前物件具有此變數
定義物件的獨有變數時,如果獨有變數名與公有變數名相同,視為修改公有變數的值;如果獨有變數名與公有變數名不相同,視為定義新的獨有屬性
None含義是為空,表示沒有具體的資料
變數的呼叫格式
取值:物件名.變數名
賦值:物件名.變數名 = 值
成員方法
成員方法概念
成員方法用於描述物件的固有行為
定義成員方法語法格式
格式一(無參方法):
class 類名:
def 方法名(self):
方法體
格式二(有參方法)
class 類名:
def 方法名(self,形參1,形參2,…):
方法體
呼叫成員方法語法格式
類名.靜態方法名(實參1,實參2,…) (推薦)
物件名.靜態方法名(實參1,實參2,…) (不推薦)
各種方法定義規則
只訪問成員變數的方法,定義成例項方法
只訪問類變數的方法,定義類方法
既訪問成員變數,也訪問類變數的方法,定義成例項方法
既不訪問成員變數,也不訪問類變數,定義成靜態方法