• <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>

            f(sixleaves) = sixleaves

            重劍無鋒 大巧不工

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              95 隨筆 :: 0 文章 :: 7 評(píng)論 :: 0 Trackbacks
             1 #import <Foundation/Foundation.h>
             2 
             3 @interface Person : NSObject
             4 @property (assign, nonatomic) int age;
             5 - (void)run;
             6 + (void)test;
             7 @end
             8 
             9 @implementation Person
            10 
            11 - (void)run
            12 {
            13 
            14     NSLog(@"Person---Run");
            15 }
            16 
            17 + (void)test
            18 {
            19     NSLog(@"Person +test");
            20 }
            21 @end
            22 
            23 @interface Student : Person
            24 {
            25     int _no;
            26     //int _age;
            27 }
            28 
            29 + (void)test2;
            30 @end
            31 @implementation Student
            32 - (void)run
            33 {
            34     NSLog(@"Student----Run");
            35 }
            36 
            37 + (void)test
            38 {
            39     NSLog(@"Student+test");
            40 }
            41 
            42 + (void)test2
            43 {
            44 
            45     [self test];
            46 }
            47 @end
            48 int main() {
            49 
            50     Student * s = [Student new];
            51     [s run];
            52     [Student test2];
            53     return 0;
            54 }
            55 
            56 /*
            57 繼承的概念:如果A繼承自B,那么A就含有B的所有成員變量和方法,這就叫繼承。
            58 
            59 繼承的作用:代碼重用,建立關(guān)系。
            60 
            61 繼承的編程思想:
            62 1.當(dāng)兩個(gè)類擁有相同屬性和方法時(shí)候,就可以將相同的東西抽取到一個(gè)父類中。
            63 2.當(dāng)A類擁有B類中的部分屬性和方法時(shí)候,可考慮讓B類繼承A類。(這種場(chǎng)合不能亂用)
            64 
            65 繼承使用的注意事項(xiàng):
            66 1.父類要寫在子類前面。
            67 2.OC中不允許子類和父類有相同名稱的成員變量。
            68 3.子類能重寫父類的方法(override,類方法、對(duì)象方法都能override)。或者實(shí)現(xiàn)父類只聲明沒有實(shí)現(xiàn)的方法。
            69 4.當(dāng)調(diào)用某個(gè)方法(類方法、對(duì)象方法)時(shí)候有限去當(dāng)前類中找,當(dāng)當(dāng)前類找不到,再取父類中。
            70 
            71 
            72 繼承的壞處:
            73 1.代碼耦合性太強(qiáng)。
            74 
            75 
            76 組合關(guān)系:(has a)
            77 1.當(dāng)B類是A類的一部分。可以用組合關(guān)系。
            78 
            79 如何區(qū)分繼承和組合
            80 1.當(dāng)類A是類B,則可以用繼承。
            81 2.當(dāng)類A擁有類B,則可以用組合。
            82 */
            posted on 2015-04-30 16:01 swp 閱讀(133) 評(píng)論(0)  編輯 收藏 引用 所屬分類: objective-c
            青青草国产成人久久91网| 久久精品国产亚洲AV蜜臀色欲| 亚洲AV无一区二区三区久久| 久久久久久久波多野结衣高潮| 久久无码专区国产精品发布| 97热久久免费频精品99| 久久99免费视频| 久久嫩草影院免费看夜色| 97久久国产综合精品女不卡| 国产精品久久影院| 久久成人小视频| 国产99久久久国产精免费| 久久精品国产99国产精品亚洲| 国产美女久久久| 亚洲av日韩精品久久久久久a| 久久www免费人成精品香蕉| 久久久久精品国产亚洲AV无码| 99久久精品免费| 久久亚洲精品人成综合网| 四虎影视久久久免费| 久久久久久免费一区二区三区| 久久婷婷五月综合国产尤物app| 国产91久久综合| 999久久久国产精品| 久久精品国产亚洲av麻豆色欲 | 伊人久久大香线蕉综合影院首页| 91精品日韩人妻无码久久不卡| 久久精品国产亚洲AV无码麻豆| 久久精品国产亚洲av麻豆图片| 久久久久久极精品久久久| 伊人热人久久中文字幕| 欧美精品一本久久男人的天堂| 久久精品国产网红主播| 久久婷婷五月综合色奶水99啪 | 久久久久国产精品嫩草影院| 久久久久亚洲av毛片大| 久久久久免费视频| 亚洲精品无码久久不卡| 久久青青国产| 久久人做人爽一区二区三区| 人妻无码αv中文字幕久久琪琪布|