中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

開啟Objective-C

發布時間:2020-07-28 08:05:45 來源:網絡 閱讀:284 作者:Running2snail 欄目:開發技術

一、Objective-C簡述

       Objective-C通常寫作ObjC和較少用的Objective C或Obj-C,是擴充C的面向對象編程語言。Objective-C主要用于:編寫iOS操作系統(如:iPhoneiPod touchiPad 等蘋果移動終端設備 )應用程序和Mac OS X操作系統應用程序的利器。 Objective-C的流行當歸功于iPhone的成功,因為Objective-C被用于編寫iPhone應用程序。

        Objective-C是非常實際的語言。它是一個用C寫成、很小的運行庫,只會令應用程序的尺寸增加很小,和大部分OO系統使用極大的VM執行時間會取代了整個系統的運作相反。Objective-C寫成的程序通常不會比其原始碼大很多。而其函式庫(通常沒附在軟件發行本)亦和Smalltalk系統要使用極大的內存來開啟一個窗口的情況相反。因此,Objective-C它完全兼容標準C語言(C++對C語言的兼容僅在于大部分語法上,而在ABI(Application Binary Interface)上,還需要使用extern "C"這種顯式聲明來與C函數進行兼容),而在此基礎上增加了面向對象編程語言的特性以及Smalltalk消息機制。

       OC是C語言的超集,允許在OC中使用C語言源代碼,編譯器兼容C語言程序,具有完善的面向對象特征、包含一個運行時系統、類庫豐富等特點。

       雖然Objective-C是C的超集,但它也不視C的基本型別為第一級的對象。C++不同,Objective-C不支援運算子多載(它不支持ad-hoc多型)。亦與C++不同,但和Java相同,Objective-C只容許對象繼承一個類別(不設多重繼承)。

二、面向對象

       面向對象編程 OOP(Object Oriented Programming,面向對象程序設計)是一種計算機編程架構

       面向對象的語言:C++,Java,C#

       面向對象具有三大特征:封裝、繼承、多態。

       封裝:隱藏內部實現,穩定外部接口

       繼承:子類可以直接復用父類中的成員

       多態:不同對象對同一個消息的不同相應

開啟Objective-C

三、類和對象

     面向對象的核心是類和對象

  (一)什么是類

          類是一組具有相同(特征)屬性和行為(功能)的事物的集合,類名是標示符的一種,需要符合規范,通常類名的第一個字母大寫,且不能有下劃線,如果有多個單詞則使用駝峰標識,在對方法進行類的劃分中,一般采取的做法是誰最熟悉這個方法就把這個方法劃分給誰。在OC中,對象對方法的調用稱為消息機制,即向既定的對象發送了什么消息。

  (二) 什么是對象

            時間萬物皆對象,即哲學的“客觀存在”。在生活中,可能是一輛車,一只筆,或者是一張京東訂單,工商銀行的一張卡等等都是對象。對象描述了一個物體的特性值和行為實現

   (三) 類和對象的關系

            類和對象的關系就像是狗類和具體的狗的關系一樣。

            類是對象的抽象,是概念或者模板,而對象是類的具體實現,屬于類

            類描述這些類事物應該具體哪些行為和特征:而對象真正去實現行為和特征

(四)面向對象編程中使用對象完成程序

            開發中:先定義類,再創建對象,然后使用對象

            定義類包含兩個部分:借口部分和實現部分,分開寫

           1、接口部分:對外聲明類的特征和行為。(類似于說明書)h文件中

           2、實現部分:對內實現行為。(內部的具體實現)m文件

          接口部分(h文件)

          接口部分標志:@interface·······@end

          作用:聲明類的實例變量和方法,即特征行為

          包含內容:類名、父類名、實例變量、方法等

開啟Objective-C


          實現部分(m文件)

          實現部分標志:@implementation·······@end

          作用:實現方法,即實現類的行為

開啟Objective-C


例如:創建一個AudiCar類

類的接口部分:

開啟Objective-C


類的實現部分如下:

開啟Objective-C

類的調用部分如下:

開啟Objective-C


      (五)常見的錯誤

          (1)@interface  @end@implementation  @end不能嵌套包含

          (2)只有類的聲明沒有類的實現

          (3)漏寫@end

          (4)兩個類的聲明嵌套(可以把順序打亂)

          (5)成員變量沒有寫在{}

          (6)方法的聲明寫在了{}里面

          (7)在聲明時對類的成員變量進行初始化,請注意成員變量不能脫離對象而獨立存在

          (8)方法無法像函數那樣的調用

          (9)成員變量和方法不能用static等關鍵字修飾,不要和c語言混淆

          (10)類的實現可以寫在mian函數后面,在使用之前只要有聲明就可以


四、OC對象與函數

      OC對象與函數有著本質的區別:

    (1)方法的實現只能寫在@implementation··@end中,對象方法的聲明只能寫         在@interface···@end中間

    (2)對象方法都以-號開頭,類方法都以+號開頭

    (3)對象方法只能由對象來調用,類方法只能由類來調用,不能當做函數一樣調用

    (4)函數屬于整個文件,可以寫在文件中的任何位置,包括@implementation··@end中,但寫在@interface···@end會無法識別,函數的聲明可以再main函數內部也可以在main函數外部。

    (5)對象方法歸類\對象所有

    (6)函數調用不依賴與對象

    (7)函數內部不能直接通過成員變量名訪問對象的成員變量


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

布拖县| 香格里拉县| 中山市| 蒲江县| 郴州市| 黄平县| 高唐县| 涡阳县| 景泰县| 中方县| 呼玛县| 万山特区| 博爱县| 祁阳县| 阿拉善左旗| 德钦县| 姜堰市| 麻城市| 雷波县| 庆城县| 南皮县| 建阳市| 肥城市| 双流县| 孝昌县| 山东省| 洪洞县| 曲麻莱县| 香格里拉县| 防城港市| 茶陵县| 杨浦区| 瑞金市| 苗栗市| 临澧县| 杭锦后旗| 泸水县| 鹤壁市| 林口县| 阳江市| 安国市|