OC中Super


#import <Foundation/Foundation.h>

/*****************zoombie**********/

@interface Zoombie : NSObject

- (void)walk;

+ (void)test;

- (void)test;

;@end

@implementation Zoombie


- (void)walk {

    NSLog(@"走两步");

}

+ (void)test {

    NSLog(@"Zoombie +test");

}

- (void)test {

    NSLog(@"Zoombie -test");

}


@end

/*-------------jump------------*/

@interface JumpZoombie : Zoombie

- (void)walk;

+ (void)haha;

- (void)haha;

@end

@implementation JumpZoombie

+ (void)haha {

    //self相同调用类方法还是对象方法取决于调用super时的环境  这里调用super时时在类方法的环境中所以调用父类中类方法的test

    [super test];

}

- (void)haha {

    [super test];

}


- (void)walk {

    NSLog(@"跳两下");

    //使用调用父类中的walk方法

    [super walk];

}


@end


int main(int argc, const char * argv[]) {

    JumpZoombie *p1=[JumpZoombie new];

    [p1 walk];

    [JumpZoombie haha]; //输入test+

    [p1 test]; //输出test-

    

    return 0;

}

Super使用场景:子类需要重写父类方法的想保留父类的一些行为或在父类基础上衍生

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值