OC :類(lèi)與對(duì)象

一、面向?qū)ο?/p>

面向?qū)ο笠允挛餅橹行?,完成某件事都需要哪些事物?lái)參與,參與該事件的事物都有哪些功能,完成該事件需要這些事物相互協(xié)作共同完成,并且完成該事件只是所有事物功能中其中的一個(gè)小功能。

二、類(lèi)與對(duì)象的概念和區(qū)別

類(lèi):具有相同特征和行為的事物的抽象。

對(duì)象:對(duì)象是類(lèi)的的實(shí)例,萬(wàn)事萬(wàn)物皆對(duì)象。

? ? ? ? ? ?類(lèi)是對(duì)象的類(lèi)型。

區(qū)分類(lèi)與對(duì)象的黃金法則:當(dāng)我們看到某個(gè)概念的時(shí)候腦中想到的是同一個(gè)事物的時(shí)候,此時(shí)就是對(duì)象;不然則為類(lèi)。

三、對(duì)象的創(chuàng)建

1、分配內(nèi)存空間

Teacher *teacher = [Teacher alloc];

2、初始化

teacaher = [teacher init];

以上兩步一般合為一步

Teacher *teacher = [[Teacher alloc]init];

五、id與instancentype的區(qū)別

1、instancetype可以返回和方法所在類(lèi)相同類(lèi)型的對(duì)象,id只能返回未知類(lèi)型的對(duì)象。

2、instancetype只能作為返回值和參數(shù),但id還可以用來(lái)定義變量。

3、in????tancet??ype會(huì)告訴編譯器當(dāng)前的類(lèi)型,但id對(duì)于編譯器卻是無(wú)類(lèi)型的,調(diào)?任何?法不會(huì)給出錯(cuò)誤提示。

4、ini??t?法,id和in??tance??type是沒(méi)有區(qū)別的。因?yàn)榫幾g器會(huì)把id優(yōu)化成int????ancet??ype。當(dāng)明確返回的類(lèi)型就是當(dāng)前Cla????ss時(shí),使用int????ancet??ype能避免id帶來(lái)的編譯不出的錯(cuò)誤情況。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 學(xué)習(xí)目標(biāo) 1.【理解】對(duì)象在內(nèi)存中的存儲(chǔ) 2.【理解】nil和NULL 3.【了解】#pragma mark分組導(dǎo)...
    Hm丶閱讀 545評(píng)論 0 3
  • 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。 學(xué)習(xí)目標(biāo) 1.【理解】對(duì)象在內(nèi)存中的存儲(chǔ) 2.【理解】nil...
    LeaderBiao閱讀 319評(píng)論 0 1
  • 1.整理的對(duì)象和類(lèi)的c實(shí)現(xiàn): 這是大概結(jié)構(gòu),具體要比這個(gè)復(fù)雜一些,具體看文件(準(zhǔn)備匆忙隨后貼上源碼): 2.查看D...
    逐逐逐閱讀 1,112評(píng)論 1 7
  • 一、new方法只要通過(guò)一個(gè)類(lèi)調(diào)用類(lèi)的new方法,也就是給類(lèi)發(fā)送一個(gè)叫做new的消息之后,系統(tǒng)內(nèi)部就回做3件事情:1...
    尋回驕傲閱讀 451評(píng)論 0 0
  • --------->實(shí)例1、類(lèi)的 特征、方法 的聲明和實(shí)現(xiàn)<---------- A--->Teacher 為自定...
    b8028f13eaa2閱讀 446評(píng)論 0 0

友情鏈接更多精彩內(nèi)容