解析Objective-C中多态、动态类型和动态绑定
轉(zhuǎn)自http://mobile.51cto.com/iphone-285157.htm
Objective-C中多態(tài)、動(dòng)態(tài)類(lèi)型和動(dòng)態(tài)綁定是本文要介紹的內(nèi)容,主要是倆學(xué)習(xí)Objective-C中的一些相關(guān)的內(nèi)容,從而來(lái)學(xué)習(xí)Objective-C的使用方法,具體內(nèi)容來(lái)看詳細(xì)內(nèi)容講解。
AD:
?
Objective-C中多態(tài)、動(dòng)態(tài)類(lèi)型和動(dòng)態(tài)綁定是本文要介紹的內(nèi)容,主要是倆學(xué)習(xí)Objective-C中的一些相關(guān)的內(nèi)容,從而來(lái)學(xué)習(xí)Objective-C的使用方法,具體內(nèi)容來(lái)看詳細(xì)內(nèi)容講解。
一、多態(tài)
相同的名稱(chēng)、不同的類(lèi)。使不同的類(lèi)共享相同的方法名稱(chēng)的能力。
二、動(dòng)態(tài)綁定和id類(lèi)型
id——通用的對(duì)象類(lèi)型,可以用來(lái)存儲(chǔ)屬于任何類(lèi)的對(duì)象。如:id dataValue;(不用加*號(hào))
三、編譯時(shí)和運(yùn)行時(shí)檢查
存儲(chǔ)在id變量中的對(duì)象類(lèi)型在編譯時(shí)無(wú)法確定,所以一些測(cè)試推遲到運(yùn)行時(shí)進(jìn)行。
四、id數(shù)據(jù)類(lèi)型與靜態(tài)類(lèi)型
將一個(gè)變量定義為特定類(lèi)的對(duì)象時(shí),使用的是靜態(tài)形態(tài)。
使用動(dòng)態(tài)類(lèi)型調(diào)用一個(gè)方法,注意規(guī)則:如果在多個(gè)類(lèi)中實(shí)現(xiàn)名稱(chēng)相同的方法,那么每個(gè)方法都必須符合各個(gè)參數(shù)的類(lèi)型和返回值類(lèi)型。
五、有關(guān)類(lèi)的問(wèn)題
NSObject類(lèi)所支持的一些基本方法。
要根據(jù)類(lèi)名或另一個(gè)對(duì)象生成一個(gè)類(lèi)對(duì)象,可以向它發(fā)送class消息。如:要從名為myClass的類(lèi)中獲得類(lèi)對(duì)象,可編寫(xiě):[myClass class];
六、使用@try處理異常
@try格式:
在@try塊中加入這些statement后,程序正常執(zhí)行。但如果塊中某一條語(yǔ)句拋出異常,執(zhí)行不會(huì)終止,而是立即跳到catch塊,在那里繼續(xù)執(zhí)行。在@catch塊內(nèi)處理異常可行的執(zhí)行程序是記錄出錯(cuò)消息,清楚和終止執(zhí)行。
@finally塊包含是否執(zhí)行拋出異常的@try塊中語(yǔ)句代碼。
@throw指令允許你拋出自己的異常,可以使用該指令拋出特定異常,或者在@catch塊內(nèi)拋出帶你進(jìn)入類(lèi)似如下的代碼的異常:#throw;
小結(jié):解析Objective-C中多態(tài)、動(dòng)態(tài)類(lèi)型和動(dòng)態(tài)綁定的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)能對(duì)你有所幫助。
posted on 2012-05-15 09:59 linyawen 閱讀(...) 評(píng)論(...) 編輯 收藏轉(zhuǎn)載于:https://www.cnblogs.com/linyawen/archive/2012/05/15/2500985.html
總結(jié)
以上是生活随笔為你收集整理的解析Objective-C中多态、动态类型和动态绑定的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 小米线刷成功
- 下一篇: Android之循环执行次数のHandl