• <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 評論 :: 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)兩個類擁有相同屬性和方法時候,就可以將相同的東西抽取到一個父類中。
            63 2.當(dāng)A類擁有B類中的部分屬性和方法時候,可考慮讓B類繼承A類。(這種場合不能亂用)
            64 
            65 繼承使用的注意事項:
            66 1.父類要寫在子類前面。
            67 2.OC中不允許子類和父類有相同名稱的成員變量。
            68 3.子類能重寫父類的方法(override,類方法、對象方法都能override)。或者實現(xiàn)父類只聲明沒有實現(xiàn)的方法。
            69 4.當(dāng)調(diào)用某個方法(類方法、對象方法)時候有限去當(dāng)前類中找,當(dāng)當(dāng)前類找不到,再取父類中。
            70 
            71 
            72 繼承的壞處:
            73 1.代碼耦合性太強。
            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 閱讀(140) 評論(0)  編輯 收藏 引用 所屬分類: objective-c
            久久精品国产第一区二区三区| 老色鬼久久亚洲AV综合| 精品久久久久久无码人妻热 | 青青青青久久精品国产h久久精品五福影院1421| 久久精品一区二区国产| 久久精品亚洲福利| 无码AV中文字幕久久专区| 久久久青草青青亚洲国产免观| 欧美麻豆久久久久久中文| 久久精品国产亚洲av影院| 久久99精品久久久久久9蜜桃| 伊人久久精品无码二区麻豆| 久久93精品国产91久久综合| 久久国产高清字幕中文| 亚洲AV无一区二区三区久久| 四虎亚洲国产成人久久精品| 嫩草影院久久99| 久久香蕉一级毛片| 久久夜色精品国产网站| 久久人人爽人人人人片av| 久久国产精品无码网站| 久久最近最新中文字幕大全 | 久久精品18| 97超级碰碰碰碰久久久久| 久久99热国产这有精品| 成人妇女免费播放久久久| 无码AV波多野结衣久久| 色88久久久久高潮综合影院| 久久久久av无码免费网| 无码任你躁久久久久久老妇App| 久久久久人妻一区精品| 品成人欧美大片久久国产欧美...| 国产精品视频久久久| 久久亚洲高清观看| 国产精品无码久久久久| 久久AⅤ人妻少妇嫩草影院| 久久这里只有精品视频99| 综合久久久久久中文字幕亚洲国产国产综合一区首 | 97久久综合精品久久久综合| 国内精品久久久久久99蜜桃| 精品久久久久久国产|