青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

f(sixleaves) = sixleaves

重劍無鋒 大巧不工

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  95 隨筆 :: 0 文章 :: 7 評論 :: 0 Trackbacks
main.m

 1 //
 2 //  main.m
 3 //  便利構造器與autorelease
 4 //
 5 //  Created by sixleaves on 15/5/10.
 6 //  Copyright (c) 2015年 itcast. All rights reserved.
 7 //
 8 
 9 #import <Foundation/Foundation.h>
10 #import "Person.h"
11 #import "GoodPerson.h"
12 int main(int argc, const char * argv[]) {
13     @autoreleasepool {
14         
15         
16         Person *p1 = [Person person];
17         p1.age = 100;
18         
19         GoodPerson * p2 = [GoodPerson personWithAge: 150];
20         
21         // p2實際上指向的是Person
22         p2.money = 300;
23         
24         //NSLog(@"test");
25         
26         /*
27          代碼分析:
28          GoodPerson類調用了personWithAge,所以根據誰調用我,self就指向誰這個原則。
29          self指向GoodPerson類。GoodPerson中沒有這個方法,就只能到父類中找,到父類
30          中找到了又調用[self person],GoodPerson中又沒有這個方法,于是又找父類,找到后,創建是已經autorelease的Person對象。而不是GoodPerson對象。此時我們只需改掉person方法中寫死的[Person alloc]換成self alloc就可以,為什么呢。因為self此時指向的是子類,所以創建出來的就是子類。
31          
32          對于GoodPerson,并沒有重寫自己的dealloc方法,所以調用的時候,在GoodPerson中找不到,就去其父類Person中找,找到了后,調用了Person得dealloc方法。
33          */
34         
35 
36     }
37     return 0;
38 }
39 
40 /*
41  便利構造器的概念:
42  1.開發中,我們經常會提供一些類方法,快速創建一個已經autorelease的對象。(便利構造器\便利構造方法)
43  便利構造器與self:
44  1.在便利構造器中,盡量使用self代替類名。(或者self class).這能讓子類調用時候創造出來的就是子類對象。
45  */
46 

Person.h
 1 //
 2 //  Person.h
 3 //  便利構造器與autorelease
 4 //
 5 //  Created by sixleaves on 15/5/10.
 6 //  Copyright (c) 2015年 itcast. All rights reserved.
 7 //
 8 
 9 #import <Foundation/Foundation.h>
10 
11 @interface Person : NSObject
12 
13 @property (nonatomic, assign) int age;
14 
15 // 遍歷構造器
16 
17 + (id)person;
18 
19 + (id)personWithAge:(int)age;
20 
21 @end
22 
Person.m
 1 //
 2 //  Person.m
 3 //  便利構造器與autorelease
 4 //
 5 //  Created by sixleaves on 15/5/10.
 6 //  Copyright (c) 2015年 itcast. All rights reserved.
 7 //
 8 
 9 #import "Person.h"
10 
11 @implementation Person
12 
13 // 便利構造器與autorelease
14 /*
15  便利構造器的規范:
16  1.必須是類方法,
17  2.返回類型是id
18  3.必須以類名With開頭(帶參數一般還要有With),區別之一是便利構造器必須是小寫駱駝峰,而類名是大寫的。
19  
20  */
21 
22 + (id)person
23 {
24     // return [[[Person alloc] init] autorelease]會導致子類調用personWithAge、person創建的都是已經autorelease的Person對象
25     // 而不是想要的子類對象。換成self就可解決,具體分析看代碼分析。
26     return [[[self alloc] init] autorelease];
27 }
28 
29 + (id)personWithAge:(int)age
30 {
31     Person *p = [self person];
32     p.age = age;
33     return p;
34 }
35 
36 - (void)dealloc
37 {
38     NSLog(@"%d歲的對象被銷毀了~~~", _age);
39     [super dealloc];
40 }
41 
42 @end
43 

GoodPerson.h
 1 //
 2 //  GoodPerson.h
 3 //  便利構造器與autorelease
 4 //
 5 //  Created by sixleaves on 15/5/10.
 6 //  Copyright (c) 2015年 itcast. All rights reserved.
 7 //
 8 
 9 #import "Person.h"
10 
11 @interface GoodPerson : Person
12 
13 @property (nonatomic, assign) int money;
14 
15 @end
16 
GoodPerson.m 1 //
 2 //  GoodPerson.m
 3 //  便利構造器與autorelease
 4 //
 5 //  Created by sixleaves on 15/5/10.
 6 //  Copyright (c) 2015年 itcast. All rights reserved.
 7 //
 8 
 9 #import "GoodPerson.h"
10 
11 @implementation GoodPerson
12 
13 - (void)dealloc
14 {
15     
16     NSLog(@"GoodPerson-dealloc");
17     [super dealloc];
18 }
19 
20 @end
21 
posted on 2015-05-10 19:35 swp 閱讀(237) 評論(0)  編輯 收藏 引用 所屬分類: objective-c
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美日韩在线三级| 免费国产一区二区| 国产精品观看| 亚洲欧美不卡| 欧美在线免费观看亚洲| 韩国成人福利片在线播放| 免费久久99精品国产| 欧美日本高清| 久久国产精品一区二区三区| 美女网站久久| 亚洲一区二区三区视频| 亚洲欧美日韩电影| 最新国产の精品合集bt伙计| 亚洲精品日韩一| 国产亚洲成人一区| 亚洲精选中文字幕| 韩国v欧美v日本v亚洲v| 亚洲精品国产精品国自产观看浪潮| 欧美国产成人在线| 欧美在线播放一区二区| 久久久成人网| 亚洲欧美日韩成人| 久久亚洲一区二区| 亚洲淫性视频| 老色鬼精品视频在线观看播放| 99天天综合性| 欧美一区二区福利在线| 99精品福利视频| 欧美在线观看视频在线| 一区二区三区高清在线观看| 久久精品日产第一区二区| 国产精品99久久久久久久久| 久久久久久久久久久久久9999| 亚洲午夜激情| 欧美国产视频在线| 久久综合给合| 国产欧美一区二区三区沐欲| 亚洲精品一区二区三区四区高清| 国产一区二区精品在线观看| 一区二区三区 在线观看视频| 亚洲电影免费在线| 欧美亚洲一区二区在线| 亚洲一区久久| 欧美日韩黄色大片| 亚洲欧洲综合| 亚洲激情综合| 久久综合色一综合色88| 久久高清福利视频| 国产精品乱码妇女bbbb| 日韩视频免费观看高清在线视频| 亚洲国产日韩欧美在线图片| 欧美一区二区在线免费播放| 欧美亚洲一区| 国产精品亚洲产品| 亚洲制服av| 欧美一激情一区二区三区| 国产精品国产一区二区| 亚洲午夜激情网站| 亚洲欧美欧美一区二区三区| 国产精品v片在线观看不卡| 亚洲人成网站777色婷婷| 亚洲老司机av| 欧美日韩成人激情| 日韩午夜高潮| 亚洲欧美国产精品桃花| 国产乱码精品一区二区三区忘忧草| 制服丝袜亚洲播放| 性欧美18~19sex高清播放| 国产精品乱码人人做人人爱| 亚洲欧美日韩在线| 久久久久免费视频| 激情综合激情| 男女av一区三区二区色多| 欧美激情综合色| 99热在线精品观看| 欧美理论电影在线观看| 亚洲美女av在线播放| 亚洲免费婷婷| 国产一区日韩欧美| 欧美成人免费全部| 99ri日韩精品视频| 久久久国产精品一区| 亚洲盗摄视频| 欧美精品在线免费播放| 中国亚洲黄色| 老**午夜毛片一区二区三区| 亚洲精品美女在线观看播放| 欧美少妇一区二区| 欧美一区激情| 亚洲乱码国产乱码精品精98午夜| 亚洲欧美日本国产有色| 一区二区三区无毛| 欧美日韩免费网站| 久久九九精品| 一区二区三区.www| 欧美不卡视频一区发布| 亚洲新中文字幕| 精品999在线观看| 欧美日韩亚洲高清一区二区| 欧美在线观看一二区| 日韩一级免费观看| 久久综合九色欧美综合狠狠| 亚洲午夜一区二区三区| 一区视频在线播放| 国产精品亚洲一区| 欧美激情精品久久久久久蜜臀| 亚洲愉拍自拍另类高清精品| 欧美激情亚洲综合一区| 午夜精品在线视频| 9久re热视频在线精品| 国产亚洲综合精品| 国产精品久久久久7777婷婷| 每日更新成人在线视频| 午夜在线视频一区二区区别| 亚洲麻豆国产自偷在线| 亚洲风情亚aⅴ在线发布| 久久疯狂做爰流白浆xx| 国产精品99久久久久久久vr| 亚洲人久久久| 在线观看视频一区二区| 国产日本欧美一区二区三区在线 | 亚洲欧美日韩爽爽影院| 最近中文字幕mv在线一区二区三区四区| 久久国产精品久久久久久| 一本一本久久| 夜夜嗨av色一区二区不卡| 在线日韩欧美视频| 一区视频在线| 一区二区三区在线免费视频| 国产色产综合产在线视频| 欧美三级不卡| 欧美性色视频在线| 国产精品草草| 国产精品久久77777| 国产精品黄视频| 国产精品久久久久av免费| 欧美午夜国产| 国产精品丝袜91| 国产精品午夜久久| 国产欧美在线| 国内精品久久久久伊人av| 国产一区二区黄色| 一区二区三区在线不卡| 亚洲第一视频网站| 亚洲激情社区| 一区二区三区福利| 亚洲免费视频一区二区| 亚洲欧美卡通另类91av| 午夜欧美不卡精品aaaaa| 欧美一区二区三区男人的天堂| 久久国产视频网| 女生裸体视频一区二区三区| 亚洲大胆av| 亚洲精品影院在线观看| 99精品视频免费观看| 亚洲午夜电影在线观看| 亚洲欧美视频| 久久久一区二区三区| 欧美激情一区二区三区不卡| 欧美三级韩国三级日本三斤| 国产欧美一区二区三区久久| 1769国产精品| 亚洲欧美精品suv| 久久亚洲春色中文字幕| 亚洲第一黄色| 亚洲图片在线观看| 久久国产精品色婷婷| 欧美成人久久| 国产日韩欧美亚洲| 亚洲三级电影在线观看| 午夜精品视频在线| 亚洲第一成人在线| 亚洲综合不卡| 免费观看成人鲁鲁鲁鲁鲁视频| 国产精品va在线播放| 亚洲成色777777女色窝| 亚洲一级二级| 欧美不卡一区| 亚洲一区二区四区| 欧美电影免费观看大全| 国产乱码精品一区二区三区av| 91久久视频| 久久精品视频在线| 亚洲精品一区二区网址| 久久精品免费| 国产精品亚洲一区| 夜夜嗨av一区二区三区网页| 久久久久五月天| 亚洲视频在线播放| 欧美理论电影在线观看| 极品尤物久久久av免费看| 亚洲免费一区二区| 亚洲人成在线免费观看| 久久精品五月婷婷| 国产精品网站视频| 亚洲婷婷国产精品电影人久久| 欧美高清视频在线播放| 欧美中文字幕在线视频| 欧美四级在线观看| 日韩亚洲视频|