• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            羅朝輝(飄飄白云)

            關(guān)注嵌入式操作系統(tǒng),移動平臺,圖形開發(fā)。-->加微博 ^_^

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              85 隨筆 :: 0 文章 :: 169 評論 :: 0 Trackbacks

            Obj-C 類方法簡介

            羅朝輝(http://www.shnenglu.com/kesalin/

            CC許可,轉(zhuǎn)載請注明出處

            一,Objective C  的類方法(class method),即 static 方法,是用 + 修飾的方法。類方法是屬于類對象的,所以無需創(chuàng)建類的實例對象我們就可以直接使用它們。使用形式為:

            [ClassName classMethod];

            在這里 ClassName 代表的就是一個類對象,而不是作為一種類型。類名只有出現(xiàn)在接收消息的表達式中才代表一個類對象,其他情況下都表示一種類型。

            二,類方法可以繼承自基類,就像普通的類成員方法一樣。有一個特別的類方法 + (void) initialize,在類接收到任何消息之前,運行時系統(tǒng)會向類對象發(fā)送這個消息,因此我們可以在這個函數(shù)里對類對象做一些初始化,比如初始化 static 變量等等。在 NSObject 中,該方法什么也不做。

            三,當(dāng)類對象接收到一個消息卻沒有相應(yīng)的類方法響應(yīng)時,運行時系統(tǒng)會去檢查是否存在一個 root (通常是 NSObject)的實例方法能夠響應(yīng),如果能夠響應(yīng)就會執(zhí)行 root 的成員方法來響應(yīng)。只有在這種情況下,類對象才能夠執(zhí)行實例方法!再次聲明類對象執(zhí)行實例方法的條件:

            1,類對象沒有相應(yīng)的類方法來響應(yīng)某個發(fā)送至它的消息;
            2,root 類定義了能夠響應(yīng)這個消息的實例方法。

            四,類方法的返回值類型默認(rèn)為 id,也能接受不定參數(shù),這些都與實例方法是一致的。例如:

            + makeGroup:group, ...;

            五,在類方法中使用 self 和 super,這時 self 和 super 指代的都是類對象,而非實例對象,這一點要特別注意。推薦的工廠方法寫法如下,在這里使用 self class 而不是直接寫類名,是為了應(yīng)對子類調(diào)用該函數(shù)的情況。
            + (id) getInstance
            {
                id instance = [[[self class] alloc] init];
                return [instance autorelease];
            }

            posted on 2011-11-01 17:14 羅朝輝 閱讀(2806) 評論(2)  編輯 收藏 引用 所屬分類: Cocoa 開發(fā)

            評論

            # re: [Cocoa]Obj-C 類方法簡介[未登錄] 2011-11-01 19:23 無名
            還有現(xiàn)在的匿名方法. ^(void^){}  回復(fù)  更多評論
              

            # re: [Cocoa]Obj-C 類方法簡介 2011-11-01 20:37 羅朝輝
            @無名
            你說的是 block,block 不是類方法吧  回復(fù)  更多評論
              

            国产精品亚洲综合久久| 高清免费久久午夜精品| 伊人色综合久久天天网| 久久久久亚洲av综合波多野结衣| 久久久久久精品免费免费自慰| 亚洲综合精品香蕉久久网| 精品久久久久香蕉网| 久久国产成人精品国产成人亚洲| 久久久中文字幕日本| 久久精品亚洲日本波多野结衣| 93精91精品国产综合久久香蕉| 久久精品国产亚洲AV不卡| 色婷婷综合久久久久中文| 国产精品欧美亚洲韩国日本久久| 久久久久波多野结衣高潮| 久久99精品综合国产首页| 漂亮人妻被中出中文字幕久久 | 国内精品久久久久久久影视麻豆 | 狠狠色噜噜狠狠狠狠狠色综合久久| 国产伊人久久| 久久综合久久久| 97精品国产97久久久久久免费| 国产精品va久久久久久久| 国产亚洲精品自在久久| 国产精品久久久久久久app| 91精品国产91久久久久久青草 | 亚洲国产精品无码久久一区二区| 热久久这里只有精品| 国产三级久久久精品麻豆三级| 伊人久久无码中文字幕| 国产精品久久久久久久人人看| 青春久久| 亚洲七七久久精品中文国产| 久久99精品国产麻豆不卡| 青青青国产成人久久111网站| 久久99热精品| 精品久久人人妻人人做精品| 国产精品gz久久久| 老司机午夜网站国内精品久久久久久久久| 一级做a爰片久久毛片16| a级毛片无码兔费真人久久|