多态定义

多态定义
一个person类,一个打印机print类,两个及多个打印机子类
main函数: 
    person *per = [[person alloc] init];
     person类执行doPrint方法——>
    colorPanter *colorPrint = [[colorPanter alloc]init];
    blackPanter *blackPrint = [[blackPanter alloc]init];
    //传入打印机子类名,判断执行类别。
    [per doPrint:colorPrint];
    [per doPrint:blackPrint];
 person类:实现doPrint方法
-(void) doPrint:(panter *)printer{
    [printer print];
}



print类:实现print方法
-(void)print{
    NSLog(@"打印机打印纸张");
}


两个子类:colorPanter blackPanter继承自print父类 重写父类方法;
-(void)print{
       NSLog(@"黑白打印机");
}
-(void)print{
    NSLog(@“彩色打印机”);
}


此处print类只需要实现一个方法,就可以实现无数的子类方法,这种方式被称为多态。
    原文作者:Eidesen
    原文地址: https://segmentfault.com/a/1190000004608514
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞