一.類的定義
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語言中,結構體中只能...