OC學習 三 繼承和方法

2021-06-23 05:01:26 字數 1157 閱讀 1914

繼承是oc物件導向程式設計的三大特性之一

當多個類出現部分相同的例項變數和方法時,就要考慮使用繼承

繼承的使用:將多個類中相同的例項變數和方法提出來寫成乙個公共的父類

子類繼承父類:子類會將父類中除了宣告為 @private 的例項變數以及私有方法之外的內容直接繼承,

當子類和父類有同樣的內容時,可以將這些相同的內容從子類中刪除.另外,子類從父類繼承過來的例項

變數和方法,就屬於子類所有(也就相當於將父類的內容複製乙份放在子類中).

私有方法:在.m檔案中實現了,但是沒有在.h檔案中宣告的方法,叫做私有方法.私有方法不允許在外部

訪問,只能在本類中訪問.

從父類繼承過來的方法,子類又實現了一次該方法,稱為重寫父類方法.

繼承父類方法時會存在三種情況:

1.保留父類對該方法的實現(不重寫該方法)

2.按子類重寫之後的方法來實現(完全重寫該方法)

3.乙個方法既有父類對該方法的實現,也有子類對該方法的實現.(在原方法的基礎上修改該方法)

自定義初始化方法:

對於自己寫的類,我們一般都會自己寫乙個自定義的初始化方法,在建立物件時,使用該方法進行初始化,這裡

以乙個person類為例,**實現如下

- (id)initwithname:(nsstring *)name gender:(nsstring *)gender age:(nsinteger)age

return self;

}

初始化方法是對物件進行初始化,因此是乙個減號方法.

初始化完成返回該物件,因此返回值型別為 id 型別.

初始化方法的方法名一般以 init 開頭,然後 + with + 對引數的描述

便利構造器方法:

便利構造器,顧名思義,就是方便我們建立物件時使用的.在方法內部為我們實現了開闢空間的過程,仍然

以person為例,**如下

+ (id)personwithname:(nsstring *)name gender:(nsstring *)gender age:(nsinteger)age

便利構造器用於類建立物件,使用物件是類,因此是乙個加號方法.

內部通過開闢空間,然後呼叫已經寫過的自定義的初始化方法,完成物件的建立,最後返回物件.

OC方法和繼承

oc是物件導向程式設計的語言,三個特點 繼承,封裝和多型.oc中的方法分兩種,一種是 號,類方法,這個方法一般由類來使用 一種是 號方法,一般由物件來使用 oc中的id相當於void 稱為泛型指標,代表指標型別,用id的時候不加 號 帶引數的方法 去掉方法,資料型別.和變數剩下的部分就是引數的形容詞...

OC三大特性之繼承和多型

一 繼承 1.概念 程式裡的繼承子類繼承了父類,那麼子類就擁有父類中的所有成員變數和方法,這跟現實中的狗是動物的一種,狗也具備了動物 所必備的屬性,更符合我們的理解。2.繼承的好處與缺點 1 抽取出了重複的 2 建立了類和類之間的聯絡 繼承的缺點 耦合性太強 3.繼承的例項 inte ce anim...

OC中繼承和復合

1,繼承的概念,為什麼使用繼承 繼承事面相物件語言的一大特徵,c 語言,面向過程的語言 順序,選擇,迴圈。三個特點。oc語言,物件導向的語言 封裝,繼承,多型。2 繼承的語法 1,繼承的語法 inte ce beautygirl nsobject 冒號之後表示要繼承的類 父 冒號之前表示繼承的類 子...