類
- 類本質上就是一種自定義的類型(數值類型,字符串類型,列表,元組,字典都是一種類型)
- 類這種自定義類型,使用變量記錄對象的狀態,使用方法表現其行為功能
- 類是對一類事物的抽象
- 不要把面向對象概念想象的特別高深,無非是一種代碼的抽象和封裝,它是一種比函數更高級的抽象,目的是復用
語法: 創建一個類與創建類的實例
- 類成員: 變量和方法
- 構造方法: 用于創建該類的對象(也叫實例)
- 類變量: 屬于類自己的,實例可以訪問
- 實例變量: 屬于類的對象
- 類方法: 和普通函數沒有什么區別,但是在對象創建后會自動把方法綁定到對象實例上;
- 普通函數: 前面學過函數,類的方法和函數在定義上幾乎一樣,唯有參數列表里面多了一個self
class Person:
'''類說明文檔,Person類用于作為示例,說明類的定義語法'''
#類變量
hair='black'
# 構造方法: 用于創建類的實例
def __init__(self,name,age):
# 實例變量
self.name = name
self.age=age
# 類的方法
def say(self,content):
print(content)
ps = Person('小白',22)
ps.say('小白和小菜是一對好基友.')
print(ps.name,ps.age)
小白和小菜是一對好基友.
小白 22
對"面向對象"的體會
- 類是對象一類事物的抽象,這種抽象與把一種功能抽象為函數類似,不過這種抽象更為高級,類中不只有行為,還有狀態,行為我們用方法來表現,狀態用變量(java中叫屬性)來表現,這樣看來,所謂類的抽象,就是把狀態和行為進行了封裝,類似于函數一樣的黑盒子,一個更高級的黑盒子.