一、面向?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ò)誤情況。