黑馬程式設計師 OC三大特徵

2021-06-28 15:22:53 字數 2572 閱讀 9744

物件導向的三大特徵:封裝、繼承、多型 一、

封裝(成員變數的封裝)

set方法和

get方法

set方法(能修飾內部變數)

1、 作用:提供乙個方法,讓外界設定成員變數的值,可以在方法裡面對引數進行過濾

2、 命名規範:

1> 

方法名必須以set開頭

2> 

set後面跟上成員變數的名稱,成員變數首字母必須大寫

3> 

返回值一定是void型別

4> 

一定要接收乙個引數,而且引數型別跟成員變數型別一致

5> 

形參名稱不能跟成員變數名稱一致

get方法(只能訪問,不能修改)

1、作用:返回物件內部的成員變數 2、

命名規範:

1> 

肯定有返回值,返回值型別肯定和成員變數一致

2> 

方法名與成員變數名一致

3> 

不需要接收任何引數

成員變數

成員變數的命名規範

: 成員變數都以下劃線「_

」開頭

作用:1> 

可以跟get

方法的名稱區分開

2> 

可以跟其他區域性變數區分開,一看到下劃線開頭的變數,肯定是成員變數

封裝的好處

1> 

過濾不合理的值

2> 

遮蔽內部的賦值過程

3> 

讓外界不必關注內部的細節

類方法和物件方法對比

1> 

類方法:

1、以加號+

開頭2、

只能用類名呼叫,物件不能呼叫

3、類方法中不能訪問例項變數(成員變數)

4、使用場合:當不需要訪問成員變數的時候,盡量用類方法

2> 

物件方法:

1、以減號-

開頭2、

只能讓物件呼叫,沒有物件,這個方法根本不可能被執行

3、物件方法能訪問例項變數(成員變數)

3> 

類方法和物件方法可以同名

self:指向了方法呼叫者(為指向指標),代表當前物件 用

self

訪問成員變數,區分同名的區域性變數

1、使用細節

出現的地方:所有的

oc方法中(物件方法

\類方法),不能出現在函式用法

: "self->成員變數名

" 訪問當前方法呼叫的成員變數

"[self 

方法名];" 

來呼叫方法(物件方法\

類方法)

2、常見錯誤

低階錯誤:用self

去呼叫函式

類方法中用

self

呼叫物件方法,物件方法中用

self

呼叫類方法

,使self死迴圈

二、繼承

1. 繼承的好處:

1> 

抽取了重複**

2> 

建立了類與類之間的聯絡

2. 子類可以擁有父類中的所有成員變數和方法

3. 基本上所有類的根類都是

nsobject

4. 注意點: (

1)不允許子類和父類擁有相同的成員變數 (

2)父類放在子類之前宣告 (

3)子類和父類允許有相同的方法 (

4)呼叫某個物件的方法時,優先去當前類中找,如果找不到,再去父類中找(5

)子類重新實現父類的某個方法,會覆蓋父類以前的方法

5. 每個類中都有乙個

superclass

指標指向父類

6. 繼承的缺點:耦合性太強(類與類之間的關係過於緊密)

7. 繼承和組合

繼承:xx 是

***組合:

xx擁有

*** 

(格式 : 

score 

*_score)

8.繼承的使用場合

它的所有屬性都是你想要的,一般就繼承

它的部分屬性是你想要的,可以抽取出另乙個父類

super關鍵字

1> 

可以直接呼叫父類中的方法

2> 

super處在物件方法中,就會呼叫父類的物件方法。處在類方法中,那麼就會呼叫父類的類方法

3> 

適用場合:子類重寫父類的方法時想保留父類的一些行為

三、多型(

某一類事物的多種形態)

1. 要想使用多型必須使用繼承(繼承是多型的前提)

2. 多型:父類指標指向子類物件 

多型的體現

person *p = [student new];

p->age = 100;

[p walk];

子類物件賦值給父類指標

父類指標訪問對應的屬性和方法

3. 好處:如果函式或方法引數中使用的是父類型別,可以傳入父類,子類物件

4. 侷限性:父類型別的變數不能直接呼叫子類特有的方法,必須強制轉換為子類型別變數後,才能使用

黑馬程式設計師 OC物件的三大特性

oc語言是物件導向的語言,其三大特性必不可少。1.封裝是乙個很重要的概念,它避免外界直接訪問或修改物件的屬性,可以過濾不合理的值,讓外界不必關心內部的細節。通過set方法來讓外部設定成員的屬性值,通過get方法來獲得物件屬性值。import inte ce student nsobject void...

黑馬程式設計師 OC 物件導向三大特性

封裝 一 set方法和get方法 1.set方法和get方法的使用場合 public的成員可以被隨意賦值,應該使用set方法和get方法來管理成員的訪問 set方法 1 作用 用來設定成員變數,可以在方法裡面過濾掉一些不合理的值 2 命名規範 方法都是以set開頭,而且後面跟上成員變數名,成員變數名...

黑馬程式設計師 OC基礎

asp.net unity開發 net培訓 期待與您交流!1.import的用途 1 跟 include一樣,拷貝檔案的內容 2 可以自動防止檔案的內容被重複拷貝 2.import nsobjcruntime.h中有nslog函式的宣告,一般用 3.foundation框架標頭檔案的路徑 4.主標頭...