1.物件導向的簡介
python是一門物件導向的語言。
所謂的物件導向語言,就是語言中所有的操作都是通過物件來進行的。
面向過程
1.面向過程是指,我們將程式分解為乙個乙個的步驟,通過每個步驟的抽象來完成程式。
2.這種方法往往只適用於乙個功能,如果要實現別的功能,往往復用率比較低。
3.這種方法比較適合人類的思維,編寫起來比較簡單。
例如:媽媽去買雞腿
(1)媽媽起床
(2)媽媽準備出門
(3)媽媽打了乙個車
(4)去了我喜歡吃雞腿的那個超市
(5)在超市裡面買了乙個雞腿
(6)我吃到雞腿了
這個過程就是面向過程,而最終的結果,是買到了雞腿,而雞腿就是物件。
物件導向
1.物件導向的程式語言,關注的是物件,而不注重過程,對於物件導向,一切皆物件。
2.以上例子,可以用媽媽買雞腿來解決。
3.物件導向的程式設計思想,將所有功能統一儲存到對應的物件中,要使用某個功能,直接找對應的物件即可。
4.這種編碼模式容易閱讀,並且易於維護,容易復用,但是編寫過程中不太符合常規思維,編寫相對麻煩。
1.我們目前學習的python都是內建物件,但是內建物件並不能滿足我們所有的要求,所以在開發中我們經常需要自己去定義一些物件。
2.類簡單理解就是一張圖紙,在程式中我們需要通過類來建立物件。
3.類是物件的圖紙,我們也稱物件是類的例項(instance)。
4.如果多個物件是通過乙個類建立的,那麼我們稱這些物件為一類物件。
類建立的語法:
class
myclass
([父類]):
#類名需要以大駝峰的方式命名
pass
5.類也是乙個物件,類就是用來建立物件的物件。
6.既然是物件,那麼就有它的三要素,『id』,『type』,『value』,可以向物件中新增變數,物件中的變數稱之為屬性。
變數建立
物件.屬性名 = 『屬性值』
例如:
class
myclass()
:pass
p1 = myclass
p1.name =
'孫悟空'
1.類和物件都是對現實生活中事物的抽象
2.事務都包含兩個部分:
資料(屬性)
行為(方法)
3.呼叫方法
語法:物件.方法名()
class
myclass()
:def
ln(self)
:#在類中建立乙個方法
print
('hello'
)p1 = myclass
p1.ln(
)#物件.方法名()
4.方法呼叫和函式呼叫的區別:
函式呼叫,有幾個形參就必須要傳幾個實參。
方法呼叫,預設傳遞乙個引數,也就是說方法中至少有乙個形參。
5.在類**塊中,我們可以定義變數和函式
(1)變數會成為類例項的公共屬性,所有該類的例項都可以通過物件.屬性名的方法進行訪問。
(2)函式會成為該類例項的公共方法,所有該類的例項都可以通過物件.方法名()訪問。
1.屬性和方法
類中定義的屬性和方法都是公共的,任何該類的例項都可以進行訪問。
2.屬性和方法的的查詢流程
當我們呼叫乙個物件的屬性時,解析器會先查詢自身所在的物件中是否有該屬性,如果有則返回,如果沒有,則去當前類物件中尋找,有則返回,沒有則報錯。
3.例項物件和類物件中都可以儲存屬性(方法)
3.1.如果這個屬性(方法)是所有例項共享的,則應該將其儲存在類物件中。
3.2.如果這個屬性(方法)是某個例項獨有的,則應該儲存到例項物件中。
3.3.一般情況下,屬性是儲存在例項物件中,而方法儲存在類物件中。
4.引數self
4.1.self 在建立時需要定義,但在呼叫時,會自動傳入。
4.2.self的名字並不是寫死的,但最好還是按約定使用。
4.3.self總是指呼叫時的類的例項。
例如:
class
myclass()
defln
(self)
print
('%s是無敵的'
%self.name)
p1 = myclass(
)p1.name =
'光頭強'
p1.ln(
)#呼叫方法
python之物件導向
類 是乙個特殊的物件,class a 定義的類屬於 類物件 類的例項 obj a 屬於 例項物件 例項屬性 init 定義例項屬性 例項方法 self 物件名.方法名 類屬性 針對類物件定義的屬性,訪問類屬性方法 類名.類屬性 物件名.類屬性 類方法 針對類物件定義的方法,內部可直接訪問類屬性和其他...
python之物件導向
python中一切皆物件 class 定義的類屬於類物件 obj1 屬於例項物件 在程式執行時,類同樣會載入到記憶體,類物件在記憶體中只有乙份,使用乙個類可以建立出很多例項物件 除了封裝例項的屬性和方法外,類物件還可以擁有自己的屬性和方法 類屬性和例項屬性 類屬性就是給類物件中定義屬性,通常用來記錄...
python之物件導向
物件導向介紹 一 物件導向和面向過程 面向過程 核心過程二字,過程即解決問題的步驟,就是先幹什麼後幹什麼 基於該思想寫程式就好比在這是一條流水線,是一種機械式的思維方式 優點 複雜的過程流程化 缺點 擴充套件性差 物件導向 核心是物件二字,物件指特徵與技能的結合體 基於該思想編寫程式就好比在創造乙個...