1.1物件導向概念
物件導向是一種程式設計思想,是對現實世界中的事物進行抽象的方式。應用到**程式設計設計中,是一種建立現實世界事物模型的方式。
1.2 物件導向和面向過程區別
面向過程關注的是完成工作的步驟,物件導向關注的是誰能完成工作。物件導向是在完成工作的時候關注哪些個體能夠完成對應的工作,找到對應的個體即可完成對應任務。
2.1類的概念
類是一系列事物的統稱,同類事物必定具有相同的特徵。日常事物的特徵根據特性分為狀態和行為,對應到類中是變數和方法。
特徵分類:
狀態 變數(成員變數)
行為 方法(成員方法)
統稱:類的成員
2.2類定義語法格式
class 類名:
pass
說明:pass是空語句,不具有任何意義,僅為了保持程式結構完整性
2.3類名的命名規則
類名命名規範:滿足大駝峰命名規則
3.1物件的概念
物件是類的具體表現形式,是實際存在的個體。(類是一系列事物的統稱)
3.2建立物件語法格式
物件名 = 類名()
3.3 注意事項
物件的建立不限制數量,乙個類可以建立任意個數的物件
4.1成員變數的概念
成員變數用於描述物件的固有狀態或屬性。
4.2定義成員變數語法格式(公有屬性/公有變數)
class 類名:
definit(self):
self.變數名1 = 值1
self.變數名2 = none
4.3成員變數定義語法格式(獨有屬性/獨有變數)
物件名.變數名 = 值
4.4公有變數與獨有變數的區別
公有變數在__init__方法中宣告,每個物件都具有該變數
獨有變數在建立物件後宣告,只有當前物件具有此變數
定義物件的獨有變數時,如果獨有變數名與公有變數名相同,視為修改公有變數的值;如果獨有變數名與公有變數名不相同,視為定義新的獨有屬性
none含義是為空,表示沒有具體的資料
4.5變數的呼叫格式
取值:物件名.變數名
賦值:物件名.變數名 = 值
5.1成員方法概念
成員方法用於描述物件的固有行為
5.2定義成員方法語法格式
格式一(無參方法):
class 類名:
def 方法名(self):
方法體
格式二(有參方法)
class 類名:
def 方法名(self,形參1,形參2,…):
方法體
5.3呼叫成員方法語法格式
格式一(呼叫無參方法):
物件名.方法名()
格式二(呼叫有參方法):
物件名.方法名(實參1,實參2,…)
6.1__init__方法的作用
__init__方法,也稱為構造方法,建立物件時為物件初始化成員變數
6.2定義__init__方法語法格式
格式一:
definit(self):
self.變數名1 = 值1
格式二:
def __init__(self,形參1,形參2,…):
self.__屬性名1 = 形參1
self.__屬性名2 = 形參2
6.3__init__方法呼叫和執行
__init__方法在建立物件時被執行,無需手工呼叫即可執行
__init__方法中如果有形參,在建立物件時需要傳遞對應的實參
6.4魔術方法
魔術方法是在類中宣告、定義的方法,執行時無需手工呼叫,自動執行。
7.1__str__方法的作用
__str__方法是在使用print函式列印輸出物件到螢幕時被呼叫的方法,用於返回物件的規範化字串表現形式
7.2定義__str__方法語法格式
defstr(self):
return 列印物件是顯示的資訊
8.1成員方法中呼叫成員變數語法格式
self.變數名
8.2成員方法中呼叫成員方法語法格式
self.方法名(實參1,實參2,…)
8.3 self
self僅出現在成員方法中,指代執行該方法的物件。
9.1封裝的作用
封裝操作可以對受訪問保護的成員進行功能開放的控制,達到保護資料不被非法訪問的目的
9.2定義私有變數語法格式
self.__屬性名 = 值
9.3定義私有方法語法格式
def __方法名(self,形參1,形參2,…):
方法體9.4 標準封裝語法格式
變數私有化格式:
self.__屬性名 = 值
提供公共的訪問器格式:
def get_屬性名(self):
return self.__屬性名
提供公共的修改器格式:
def set_屬性名(self,屬性名):
self.__屬性名 = 屬性名
10.1類變數的概念
類變數是定義在類中,不屬於某個具體物件的特徵,被所有物件共同使用的特徵
10.2定義類變數語法格式
class 類名:
變數名 = 值
10.3呼叫類變數語法格式
類變數推薦使用類名取值訪問,也可以使用物件名取值訪問
類變數只能通過類名修改;使用物件名呼叫類變數修改類變數的值時會建立新的物件獨有變數;如果此時物件具有同名物件變數,則修改對應的變數值
類變數可以私有化
11.1類方法的概念
類方法是定義在類中,不屬於某個具體物件的行為,被所有物件共同使用的行為
11.2定義類方法基本語法
class 類名:
@classmethod
def 方法名(cls, 形參1,形參2,…):
方法體11.3呼叫類方法語法格式
類名.類方法名(實參1,實參2,…) (推薦)
物件名.類方法名(實參1,實參2,…) (不推薦)
11.4注意事項
類方法中不允許使用例項變數和例項方法
類方法中允許使用類變數和類方法,通過第乙個引數cls進行
例項方法中允許使用類變數和類方法
12.1定義靜態方法語法格式
class 類名:
@staticmethod
def 方法名(形參1,形參2,…):
方法體12.2呼叫靜態方法語法格式
類名.靜態方法名(實參1,實參2,…) (推薦)
物件名.靜態方法名(實參1,實參2,…) (不推薦)
12.3各種方法定義規則
只訪問成員變數的方法,定義成例項方法
只訪問類變數的方法,定義類方法
既訪問成員變數,也訪問類變數的方法,定義成例項方法
既不訪問成員變數,也不訪問類變數,定義成靜態方法
python物件導向學習 python物件導向學習
物件導向最重要的概念就是類 class 和例項 instance 必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的 物件 每個物件都擁有相同的方法,但各自的資料可能不同。物件導向三個概念 1.封裝 即把客觀事物封裝成抽象的類,並且類可以把自己的資料和方法讓可信的類進...
python物件導向總結 Python物件導向總結
python 物件導向 oop 1 物件導向 是乙個更大封裝,把乙個物件封裝多個方法 2 類 是對一些具有相同特徵或行為的事物的乙個統稱,是抽象的,不能直接使用 特徵被稱為屬性 行為被稱為方法 3 物件 是由類建立出來的乙個具體的存在,可以直接使用 先有類再有物件,類只有乙個,而物件可以有多個 類中...
python登入物件導向 python 物件導向
一 屬性和方法 1.a a 例項屬性 通過例項物件來新增的屬性就是例項屬性 a.count 10 例項方法都是在類中直接定義的 以self為第乙個引數的方法都是例項方法 當通過例項物件呼叫時,會自動傳遞當前物件作為self傳入 當通過類物件呼叫時,不會自動傳遞self a.test 等價於 a.te...