課時36 類與物件 給大家介紹物件

2022-08-04 11:15:12 字數 2135 閱讀 8492

目錄:

一、物件=屬性+方法

二、課時36課後習題及答案

大家之前已經聽說過封裝的概念,把亂七八糟的資料扔進列表裡面,這是一種封裝,是資料層面的封裝;把常用的**段打包成乙個函式,這也是一種封裝,是語句層面的封裝;本章學習的物件,也是一種封裝的思想,不過這種思想顯然要更高階一步:物件的**是模擬真實世界,把資料和**都放在了一起。

打個比方:烏龜就是真是的乙個物件:(從兩方面來描述:紅色的為靜態特徵的描述,藍色的為動態的行為)

一、物件=屬性+方法

python中的物件也是如此,乙個物件的特徵稱為「屬性」,乙個物件的行為稱為「方法」。

如果把「烏龜」寫成**,將會是下邊這樣:

class turtle: #

python 中的類名約定以大寫字母開頭

"""關於類的乙個簡單例子

"""#

屬性 color = '

green

'weight = 10legs = 4shell =true

mouth = '大嘴'

#方法defclimb(self):

print("

我正在很努力的向前爬......")

defrun(self):

print("

我正在飛快的向前跑......")

defbite(self):

print("

咬死你咬死你!!")

defeat(self):

print("

有得吃,真滿足^_^")

defsleep(self):

print("

困了,睡了,晚安,zzzz

以上**定義了物件的特徵(屬性)和行為(方法),但還不是乙個完整的物件,將定義的這些稱為類(class)。需要使用類來建立乙個真正的物件,這個物件就叫作這個類的乙個例項(instance)也叫例項物件(instance objects)

可以這樣理解:這好比工廠的流水線要生產一系列玩具,是不是先做出這個玩具的模具,然後根據這個模具再進行批量生產,才得到真正的玩具。

再舉個例子:蓋房子,,是不是得先有個圖紙,但光有個圖紙你能不能住進去?顯然是不能的。圖紙只告訴了你這個房子長什麼樣子,但圖紙並不是真正的房子。要根據圖紙用鋼筋水泥建造出來的房子才能住人,另外根據一張圖紙就能蓋出很多房子。建立乙個物件,也叫類的例項化,其實很簡單:

>>> #

先執行程式

>>> tt = turtle()

注意,類名後邊跟著的小括號,這跟呼叫函式是一樣的,所以在python中,類名約定用大寫字母開頭,函式用小寫字母開頭,這樣更容易區分。另外賦值操作並不是必需的,但如果沒有把建立好的例項物件賦值給乙個變數,那這個物件就沒辦法使用,因為沒有任何引用指向這個例項,最終會被python的垃圾收集機制自動**。

那如果要呼叫物件裡的方法,使用點操作符(.)即可。

>>>tt.climb()

我正在很努力的向前爬......

>>>tt.bite()

咬死你咬死你!!

>>>tt.sleep()

困了,睡了,晚安,zzzz

二、課時36課後習題及答案

給大家介紹物件

使用物件進行程式設計是c 的核心,也是我們常說的c 比c 高階 的重要根據之一。但是不希望大家因為這樣就對這個看起來很深奧的概念望而生畏。所以要明確的告訴大家 物件的本質上不過是一種新的資料型別,只不過它擁有無限的潛力。打個比方就像再美麗的女孩本質上不過也是女,只不過她擁有無限的選擇。我們從乙個類開...

python入門 P36類和物件 給大家介紹物件

下面展示一些python3建立類,類的屬性 方法,以及呼叫的 這裡還用到了多型,物件fighter和defender都呼叫了相同名字的方法,但卻實現的是不同的功能 tips 類的定義首字母一般大寫,方法一般小寫,便於區分 class fight define class name color gre...

類與物件(基礎介紹)

類是物件導向程式設計的乙個基本單位,它是由成員屬性 例如 private string name 就是乙個成員屬性,其格式就是 許可權修飾符 資料型別 成員變數 和成員方法 忘記說明了,成員方法就是c語言中的成員函式 組成,類相當於模板,是不能夠直接使用的。因此構造類後還要建立類的物件。首先對於類你...