概述 protocol類似C++中的抽象類和Java中的interface。分為Formal protocol和informal protocol兩種,其中在Objective C 2.0之前,informal protocol是Cocoa中實現delegate的重要基礎 ...
面向對象永遠是個可以吐槽的話題,從開始提出到推崇備至,到充滿質疑,一路走來讓人唏噓不已。面向對象的思想可謂歷史悠久, 世紀 年代的Smalltalk可以說是面向對象語言的經典,直到今天我們依然將這門語言視為面向對象語言的基礎。 面向對象是大部分編程語言的基本特性,像C Java Objective C這樣的靜態語言,Ruby Python這樣的動態語言都是面向對象的語言。但是如何編寫面向對象的程 ...
2012-06-22 20:13 15 25266 推薦指數:
概述 protocol類似C++中的抽象類和Java中的interface。分為Formal protocol和informal protocol兩種,其中在Objective C 2.0之前,informal protocol是Cocoa中實現delegate的重要基礎 ...
,從而避免對復雜對象進行修改。當您感興趣的事件發生時,復雜對象會將消息發送給您定制的委托對象。您可以通 ...
各種語言都有些傳遞函數的方法:C語言中可以使用函數指針,C++中有函數引用、仿函數和lambda,Objective-C里也有選擇器(selector)和block。不過由於iOS SDK中的大部分API都是selector的方式,所以本文就重點講述selector了。Objective-C和我 ...
Objective-C 中的協議(@protocol),依照我的理解,就是C#, Java, Pascal等語言中的接口(Interface)。協議本身不實現任何方法,只是聲明方法,使用協議的類必須實現協議方法。 Objective-C 中的接口(@interface),就是類 ...
WWDC2015的明星是Swift。在Swift語言到2.0以后會被開源,這其中包括了protocol擴展和一個新的錯誤處理API。 蘋果的小baby已經長成,並且意料之中的獲得了開發者的關注。但是在iOS開發中Object-C並不會很快的推出歷史舞台。 並且在WWDC2015中介 ...
我們知道在 Objective-C 中給 nil 發送消息程序不會崩潰, Objective-C 是以 C 語言為基礎的, PC 上,在 C 語言中對空指針進行操作, 程序會由於越界訪問而出現保護錯進而崩潰, 但是 Objective-C 中為什么不會崩潰呢? 原因需要從源代碼中尋找 ...
轉載鏈接:Objective-C 消息發送與轉發機制原理 文章目錄 1. 八面玲瓏的 objc_msgSend 1.1. 源碼解析 1.2. 為什么使用匯編語言 2. 使用 lookUpImpOrForward ...
很少有人會想到 Objective-C 歷史悠久,並且它實際上影響了很多其他的編程技術。比如, Java 編程語言和 Objective-C 就有很多共同點。原因就是在 Objective-C 的早期,NeXT 和 Sun Microsystems 合作開發 ...