17 初識物件導向

2021-09-16 12:26:14 字數 2599 閱讀 4334

python中一切結尾物件,型別的本質就是類。精簡**,方便使用,方便修改。在為呼叫函式的時候,系統不會建立物件,只有在賦值之後,才會有乙個物件生成。

def

person

(name, age, ***, hobby)

: person =

return person

zhangsan = person(

'張三',10

,'男'

,'吃'

)lisi = person(

'李四',20

,'女'

,'玩'

)print

(zhangsan)

print

(lisi)

輸出:

上述的person就是乙個類,是抽象的,其中可以包括屬性,但不知道屬性的具體值

上述中zhangsan就是乙個物件,有屬性相對應的值。根據類中描述的屬性來按順序進行定義。

自定義類

class 類名:

屬性1= 『a』

屬性2= 『b』

類名通過類名.屬性來檢視屬性。

class

person

:def

__init__

(self,

*args)

: self.name = args[0]

self.weight = args[1]

self.age = args[2]

self.say = args[3]

alex = person(

'張三'

,100,32

,'你好'

)#例項化

print

(alex.name)

print

(alex.weight)

print

(alex.age)

print

(alex.say)

輸出:

類的建立過程:

類名()會創造出乙個物件,建立乙個self變數

呼叫__init__方法,類名括號中的引數會被接收到self中

執行__init__方法

返回self

class

person

:def

__init__

(self,

*args)

:#初始化方法,self是乙個物件,是乙個必須傳的引數

self.name = args[0]

self.weight = args[1]

self.age = args[2]

self.say = args[3]

defwalk

(self,n)

:#方法,一般情況下必須傳self引數,且必須寫在第乙個,後面還可以傳其他引數。

print

('%s走了%d步'

%(self.name,n)

)alex = person(

'張三'

,100,32

,'你好'

)person.walk(alex,10)

#類似於下面的句子,但下面的要簡單得多

alex.walk(

10)

輸出:

物件能做的事:

類名的作用:

類屬性(靜態屬性)

在類中直接定義的屬性

class

person

: country =

'china'

#類屬性,是靜態屬性,只要建立了這個類,這個屬性就一定存在

candy = person(

)print

(candy.country)

輸出:

circle 屬性 半徑 ,兩個方法:求周長和面積

from math import pi

class

circle

:def

__init__

(self,r)

: self.r = r

defarea

(self)

:return pi*

(self.r**2)

defperimeter

(self)

:return

2*pi*self.r

c1 = circle(6)

print

(c1.area())

print

(c1.perimeter(

))

輸出:

物件導向 初識物件導向

面向過程思想 步驟清晰簡單,第一步做什麼,第二步做什麼.面向過程適合處理一些較為簡單的問題 物件導向思想 物以類聚,分類的思維模式,思考問題首先會解決問題需要分哪些類,然後對這些類進行單獨思考,最後才是對某個分類下的細節進行面向過程的思索 物件導向適合處理複雜的問題,適合處理需要多人協作的問題 對於...

17物件導向

scala語言是一門面向函式程式設計的語言,並且相容物件導向的思想 scala中類分為兩種 描述類class,執行類object。類不需要使用public修飾,乙個檔案可存在多個類。class student object demo 1 在類名後面新增 完成構造方法 2 乙個類只能有乙個主構造方法,...

初識物件導向

1.例項化 2.init 方法 3.類方法和靜態方法 4.訪問控制 5.屬性裝飾器 在python中,用變數表示特徵,用函式表示技能,因而具有相同特徵和技能的一類事物就是 類 物件是則是這一類事物中具體的乙個.三要素類 class 用來描述具有相同的屬性和方法的物件的集合。它定義了該集合中每個物件所...