类别中的方法能否被继承

#import <Foundation/Foundation.h>
#import "animal+test.h"
#import "animal.h"
#import "Dog.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        animal*xiaonaimal=[[animal alloc]init];
        [xiaonaimal tired];
        [xiaonaimal run];
        Dog*xiaodog=[[Dog alloc]init];
        [xiaodog  bark];  //调用自身的方法
        [xiaodog tired];   //继承父类的方法
        [xiaodog run];   // 继承父类类别中的方法
        //结论:
        //子类能继承父类中的所有方法  包括类别中的方法
    }
    return 0;
}

 

#import "animal.h"

@interface Dog : animal
-(void)bark;
@end


#import "Dog.h"
@implementation Dog
-(void)bark
{
    NSLog(@"边睡边叫");
}
@end

 

//  animal+test.h
#import "animal.h"

@interface animal (test)
-(void)run;
@end

#import "animal+test.h"
@implementation animal (test)
-(void)run
{
    NSLog(@"边跑边睡");
}

@end
//  animal.h
#import <Foundation/Foundation.h>

@interface animal : NSObject
-(void)tired;
@end


#import "animal.h"

@implementation animal

-(void)tired
{
    NSLog(@"累到睡着");
}

@end

 

  //结论:

//子类能继承父类中的所有方法 包括类别中的方法

posted @ 2016-07-26 16:58  代码始我快乐  阅读(403)  评论(0编辑  收藏  举报