類和物件1

2021-09-29 05:36:59 字數 2235 閱讀 7751

一.類的定義

1.類是為了面向更多的物件

2.類包括屬性和方法

3.形式

class 類名:

類的內容

二.oo的特徵

1.封裝

2.繼承

3.多型

三.self引數

類中定義函式時,需要加入self引數,該引數的作用是將類的方法分給不同的物件,具體原理不需要了解,只需知道類的方法內總需有self引數即可

>>

>

class

tab:

deffun1

(self)

:print

('like'

)>>

> c=tab(

)>>

> c.fun1(

)like

四.init魔法方法

class

ball

:def

__init__

(self,name)

: self.name=name

defkick

(self)

:print

('我叫%s,該死的,誰提我'

%self.name)

>>

> b=ball(

'tudou'

)#運用魔法方法後,括號裡必須有引數,這樣直接執行類裡的init方法,再呼叫kick方法,無需引數直接返回想要的輸出

>>

> b.kick(

)我叫tudou,該死的,誰提我

>>

>

class

ball

:def

__init__

(self,name=

'tudou'):

#init方法的引數也可以設定預設值,這樣引用類時不加引數也不會報錯

self.name=name

defkick

(self)

:print

('我叫%s,該死的,誰提我'

%self.name)

>>

>

>>

> a=ball(

)>>

> a.kick(

)我叫tudou,該死的,誰提我

五.公有和私有

公有即是在外部可以訪問物件內部的屬性和方法,而設定為私有則不能直接方粉物件內部的屬性和方法

>>

>

class

person

: name=

'u'>>

> p=person(

)>>

> p.name#公有可以直接訪問

'u'

>>

>

class

person

: __name=

'u'#在變數前加雙下劃線設定為私有

>>

> p=person(

)>>

> p.name

traceback (most recent call last)

: file ""

, line 1,in

p.name

attributeerror:

'person'

object has no attribute 'name'

>>

> p.__name

traceback (most recent call last)

: file ""

, line 1,in

p.__name

attributeerror:

'person'

object has no attribute '__name'

#私有直接被訪問均會報錯

>>

>

class

person

: __name=

'u'def

gatname

(self)

:return self.__name

>>

> p=person(

)>>

> p.gatname(

)'u'

>>

> p._person__name

'u'#可通過以上兩種方法進行訪問

1 類和物件

1 類和物件.h import 注意檔名稱與類名沒有什麼實質的關係,創造類時最好把檔名和類名設定成一致的,目的方便使用 oc中類的宣告標誌是 inte ce end student 當前類名 nsobject 父類名 代表繼承關係 inte ce student nsobject 所有的特徵與行為都...

類和物件1

類 物件物件的三大特性 類和物件的區別 類是靜態定義 物件是動態例項 程式 操作的是物件而非類 建模得到的是類而非物件 類和物件的 聯絡 類是物件的定義 物件的產生離不開類這個模板 類存在的目的是例項化得到物件 定義類的步驟 1.類名,2.類的資料成員代表屬性,3.編寫類的方法代表行為 類的建模是乙...

類和物件(1)

1.類與物件的初步認知 c語言是面向過程的,關注的是過程,分析出求解問題的步驟,通過函式呼叫逐步解決問題。資料和運算元據的方法是分離開的。c 是基於物件導向的,關注的是物件,將一件事情拆分成不同的物件,靠物件之間的互動完成。結構體中不僅僅可以放資料,也可以放函式。2.類的引入 c語言中,結構體中只能...