python學習 物件導向 類 物件 繼承

2021-10-24 19:17:36 字數 2832 閱讀 7643

① 約定成俗的類的命名方式:

1)首字母大寫

2)為了與其他進行區分盡量避免使用 『_』,建議採用studenthomework小駝峰的格式

②類的常規格式:

class

student()

:# 定義變數(資料成員)

student_sum =

80#類變數

# 建構函式

def__init__

(self, name, age)

# 其中的self.name 和 self.age稱為例項變數

self.name = name

self.age = age

self.__score =

0# 這個時候score就是私有的,不能使用[物件.score]直接訪問

# 例項方法訪問例項變數( 注意這裡不能直接寫name)

print

(self.name)

# 例項方法訪問類變數

print

(self.__class__.

sum)

defmark

(self,score)

: self.__score = score

if score <0:

retrun "不能輸入負分"

print

(self.name +

"得到的分數為:"

+str

(self.__score)

)# 定義例項方法:類中的方法強制傳入固定引數 self(特徵)

defwrite_homework

(self)

print

("write homework"

)# 定義類方法

@classmethed

defpuls_sum

(cls)

: cls.

sum+=

1# 定義靜態方法

@staticmethed

defadd(x,y)

:print

(x+y)

student = student()

以上為類的例項化,當然這裡例項化的student還沒有意義。詳細的在後面建構函式處解釋

呼叫類下的方法:student.write_homework()

類的最基本作用:封裝

類的最基本原則:類只負責定義和描述乙個事物,但是不執行**

函式 – 方法

變數 – 資料成員

首先對類進行描述記住一句重要的話:資料成員刻畫「學生」行為特徵,方法實現行為

類可以看做乙個模板,通過乙個模板可以產生很多物件(在類例項化之後並給例項化出的變數賦值變為物件;這裡需要怎麼賦值呢?這就引出了建構函式的概念)

在最開例舉的類的常規格式中有乙個方法__init__(self)這是類中的乙個特殊的方法,我們將它稱為建構函式。

建構函式的特點

① 例項化時會自動呼叫建構函式(建構函式也可以被人為呼叫,但是人為呼叫沒有任何意義,所以很少看到人為去呼叫建構函式)

② 建構函式不能返回除none之外的任何值

建構函式的作用

建構函式可以讓類生成不同的物件,一般用來初始化物件的特徵(回答二中的問題)

這個時候我們便可以真正的構建了乙個物件了:student = student(「小明」,18)

二者具體存在什麼區別呢?可以通過兩個列印檢視一下

print(student.name):檢視物件的name為「小明」

print(student.name):檢視類的name為『 』

通過二者的對比可以明顯的看出類變數和例項變數的區別

使用修飾器修飾,如一種**示例

類/靜態方法是不能訪問例項變數的

在python中,私有成員的宣告方法是在成員前新增「__」雙下劃線,此時該成員就不能通過[物件.成員來訪問了];

注意:① 此時對於資料成員的使用時不會儲存,但是本質上此時時動態增加了乙個變數而不是改變了其值

② python中的私有成員實際上是python自己將成員名前面增加了【 _類名】,因此還是可以通過python改變後的值來改變的,這也是python的乙個缺點;(可以通過【物件.__dict__ 】檢視物件中存在的資料成員)

### 父類

class

human()

:# 定義變數(資料成員)

student_sum =

80#類變數

# 建構函式

def__init__

(self, name, age)

# 其中的self.name 和 self.age稱為例項變數

self.name = name

self.age = age

### 子類

class

student

(human)

:def

__init__

(self,school,name,age)

: self.school = school

# 方法一:

#human.__init__(self,name,age)

# 方法二:

super

(student, self)

.__init__(name, age)

python物件導向(類和物件)

物件導向程式設計的2個非常重要的概念 類和物件 物件是物件導向程式設計的核心,在使用物件的過程中,為了將具有共同特徵和行為的一組物件抽象定義,提出了另外乙個新的概念 類 類就相當於製造飛機時的圖紙,用它來進行建立的飛機就相當於物件 賓士汽車 類 賓士smart 類 張三的那輛賓士smart 物件 狗...

python物件導向 類與物件

嗯,本學期開始學python物件導向的內容了,唔,前面的內容會在後期有時間慢慢補的。類與物件 我生活中有這樣一句話叫 物以類聚,人以群分 重點是前面那句,什麼是類呢,就是一類事物,比如人類 動物類 這是乙個大的範圍 類是封裝物件的屬性和行為的載體,反過來說,具有相同屬性和行為的一類實體被稱為類 而物...

Python 物件導向 類和物件

類 和 物件 是物件導向程式設計的 兩個 核心概念 類就相當於製造飛機時的圖紙,是乙個模板,是負責建立物件的 物件就相當於用圖紙製造的飛機 在開發過程中,應該先有類,再有物件 類中定義了什麼屬性和方法,物件中就有什麼屬性和方法,不可能多,也不可能少 在使用物件導向開發前,應該首先分析需求,確定一下,...