各種使用小技巧

1.ARC和MRC混合編譯:

如果一個工程為MRC,其中要添加ARC的文件:

選擇target -> build phases -> compile sources -> 單擊ARC的文件將compiler flags設(shè)置為:-fobjc-arc

如果一個工程為ARC,其中要添加MRC的文件:

同樣的路徑,然后單擊MRC的文件將compiler flags設(shè)置為:-fno-objc-arc。

2.模擬多繼承

在C++和JAVA中都可以實現(xiàn)多繼承?? 但是在OC中沒有多繼承? 但是oc中并沒有限制一個類中只能遵循一個協(xié)議? 在編程中可以通過協(xié)議的方式? 實現(xiàn)類似于多繼承??? 比如在類A、B、C?? 中B? C各聲明一個協(xié)議? A類中遵循B C的協(xié)議? 并實現(xiàn)協(xié)議中的方法? 可以實現(xiàn)簡單的類似于多繼承的方式

3.類別和繼承的用法與區(qū)別

????? 類別是給一個類添加一些方法? 比如給NSString添加一個字符串逆序的方法? 當(dāng)一個字符串調(diào)用該方法時候就會返回一個逆序的字符串(具體實現(xiàn)逆序步驟方法就不說了)這中方法只能給一個類添加一個新的方法和功能 不能改變原有的方法? 但是類別能獲取該類的所有變量(不論共有的還是私有的)? 又比如SDWebImage 給 UIImageView 增加了 setImageWithURL:方法。給使用者提供了很大的方便 ? 如果在編程中遇到一個類中沒有的方法 ? 但是在類里要很多地方都需要用的到? 那就不妨給這個類加一個類別把 ? 可以提高開發(fā)效率的。

?????? 繼承是子類繼承父類的所有對外提供的方法和變量,當(dāng)然如果父類的方法不能滿足子類的需求,子類完全可以在父類的基礎(chǔ)上進(jìn)行方法的擴(kuò)充或許重寫父類的方法??? 繼承不能調(diào)用父類私有的方法和變量,如果子類中聲明了 與父類相同的變量,那么子類不能再訪問父類中同名的這個變量 ,子類的變量會覆蓋該變量(注意不是刪除是覆蓋)

????

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

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

  • *面試心聲:其實這些題本人都沒怎么背,但是在上海 兩周半 面了大約10家 收到差不多3個offer,總結(jié)起來就是把...
    Dove_iOS閱讀 27,624評論 30 472
  • Objective-C 1. import的用法 拷貝文件內(nèi)容可以自動防止文件的內(nèi)容被重復(fù)拷貝(#define宏定...
    馬文濤閱讀 5,476評論 3 17
  • 一、深復(fù)制和淺復(fù)制的區(qū)別? 1、淺復(fù)制:只是復(fù)制了指向?qū)ο蟮闹羔?,即兩個指針指向同一塊內(nèi)存單元!而不復(fù)制指向?qū)ο蟮?..
    iOS_Alex閱讀 1,531評論 1 27
  • 不怕慢就怕停。 既然認(rèn)準(zhǔn)目標(biāo)就一直走下去,無論大步小步,還是快慢,都沒有關(guān)系,只要向前就可以; 停下就會有無數(shù)的人...
    不安分的路人甲閱讀 386評論 0 0
  • 全世界只有不到3%的人微信搜索并且關(guān)注了 簫凌 你真是個特別的人 策劃:簫凌「from Overture Stud...
    簫凌閱讀 148評論 0 0

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