• <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++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              95 隨筆 :: 0 文章 :: 7 評論 :: 0 Trackbacks
             1 #import <Foundation/Foundation.h>
             2 
             3 @interface Person : NSObject
             4 {
             5     int _age;
             6     @private
             7     int _fuck;
             8 }
             9 + (void)test;
            10 + (void)test1;
            11 - (void)test1;
            12 - (void)test;
            13 - (void)modify;
            14 - (int)age;
            15 @end
            16 
            17 @implementation Person
            18 + (void)test
            19 {
            20     [self test1];
            21 }
            22 + (void)test1
            23 {
            24     NSLog(@"Called Class Method test1");
            25 }
            26 - (void)test1
            27 {
            28     NSLog(@"Called Instance Method test1");
            29 }
            30 - (void)test
            31 {
            32     [self test1];
            33 }
            34 
            35 - (void)modify
            36 {
            37     self->_age = 10;
            38     self->_fuck = 20;
            39 }
            40 
            41 // error 編譯階段就會出錯。
            42 //+ (void)modify
            43 //{
            44 //    self->_age = 10;
            45 //}
            46 
            47 - (int)age
            48 {
            49     return _age;
            50 }
            51 
            52 - (int)fuck
            53 {
            54     return _fuck;
            55 }
            56 @end
            57 
            58 int main() {
            59     
            60     Person *p = [Person new];
            61     [p test]; // 輸出 Called Instance Method test1
            62     [Person test]; // Called Class Method test1.由以上兩句可知,self指向,其所在方法的調用對象(類也是個對象)。
            63     [p modify];
            64     
            65     int a = p.age;
            66     int f = p.fuck;
            67     NSLog(@"a = %d,f = %d", a, f);
            68     
            69     //[Person modify]; //錯誤,因為self指向的是類對象,而類對象本身并不存在_age這個成員變量。
            70     
            71     
            72     return 0;
            73 }
            74 
            75 /*總結:
                 self的作用:
            76  1.self指針能在對象方法中訪問對象的成員變量。(無論該成員變量的權限是private、protected、public都可以) 
                  2.self指針能調用類方法或對象方法,具體看self指向類對象還是實例對象。
                 self的編程思想:
                  1.在方法中想調用其他方法時候。
                  2.當成員變量與set方法的形參同名時候,如果不想改變成員變量名字。可以用self把成員變量和形參分開。

            77  self的使用注意:.self指針指向的是調用當前方法的對象。(類也是對象,叫做類對象)
            78  */
            posted on 2015-04-30 14:47 swp 閱讀(168) 評論(0)  編輯 收藏 引用 所屬分類: objective-c
            国产精品99久久久久久宅男| 国产亚洲精久久久久久无码AV| 日产精品久久久久久久| 一极黄色视频久久网站| 亚洲精品无码久久久久| 国产精品美女久久久久网| 久久久久久久综合日本| 99久久夜色精品国产网站| 精品一区二区久久| 无码人妻少妇久久中文字幕| 亚洲午夜久久久久久久久电影网| 久久亚洲AV成人无码电影| 精品久久久久中文字幕一区| 久久免费看黄a级毛片| 久久精品国产91久久麻豆自制 | 色综合久久久久网| 狠狠色丁香久久婷婷综合图片| 国产91色综合久久免费| 亚洲中文字幕无码久久2020| 国产精品热久久无码av| 99久久人妻无码精品系列| 麻豆av久久av盛宴av| 久久精品国产只有精品66| 久久香蕉一级毛片| 国产精品一久久香蕉国产线看观看| 亚洲国产一成久久精品国产成人综合 | 欧美精品一区二区久久| 精品精品国产自在久久高清| 国产色综合久久无码有码| 超级碰碰碰碰97久久久久| 亚洲国产一成久久精品国产成人综合 | 久久人做人爽一区二区三区| 久久男人AV资源网站| 久久久久国产亚洲AV麻豆| 亚洲国产另类久久久精品小说| 亚洲午夜精品久久久久久浪潮 | 国产日韩久久久精品影院首页| 精品久久久久久久无码| 99麻豆久久久国产精品免费| 久久精品无码午夜福利理论片| 久久久噜噜噜久久熟女AA片|