溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

OC里的繼承和重寫

發(fā)布時間:2020-06-28 03:37:09 來源:網(wǎng)絡(luò) 閱讀:1192 作者:飛奔的土豆 欄目:開發(fā)技術(shù)

 

 1.@private私有成員是不能被繼承,也不能被外部函數(shù)訪問。

@public 公有成員能被繼承,也能被外部函數(shù)訪問。

@protected 保護(hù)成員能夠被繼承,不能夠被外部函數(shù)訪問。

2. 繼承后,父類公有的成員,子類繼承后還是公有的;父類受保護(hù)的成員,子類繼承后仍為受保護(hù)的。

3. OC中成員函數(shù)都死公有的,可以被繼承,繼承后,仍然是公有的。

4. 子類之中繼承了父類中的保護(hù)和公有成員,如有私有屬性,先繼承部分屬性,然后添加私有屬性。

5. 超類 子類 --->強(qiáng)調(diào)相同

基類 派生類 --->強(qiáng)調(diào)不同

6. C++中可以sizeof子類得到子類的大小,但是OC中不能這樣,主要因為OC編譯器遠(yuǎn)沒有C++編譯器強(qiáng)大。Sizeof是編譯的概念,alloc是運行的概念,OCsizeof的調(diào)用在子類創(chuàng)建之前,sizeof自然不能達(dá)到我們的期望。OC中編譯時,不知道子類到底有多大。

7. 函數(shù)的重寫,從父類繼承的方法,可能這個方法并不適合子類,可以在子類中重寫父類的方法。

重寫之后,父類的對象調(diào)用父類的方法;子類的對象,調(diào)用子類的方法。不會引起沖突。從父類繼承的方法,不適用于子類時,可以直接聲明父類的同名函數(shù),并定義。不用考慮父類中,函數(shù)已存在的問題。重寫后,子類就不能調(diào)用父類的方法。

8. OC中所有的函數(shù)都是虛函數(shù),函數(shù)的重寫可實現(xiàn)多態(tài)性。

不同的(相近的)事物,在經(jīng)過同一事件觸發(fā)時,產(chǎn)生不同的結(jié)果or響應(yīng),調(diào)用函數(shù)時,不看指針看對象。父類的指針可以指向子類的對象。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI