oc中的多态

来源:互联网 发布:网络爬虫是干嘛的 编辑:程序博客网 时间:2024/06/16 11:12

首先从多态的定义来说:

用一个父类的指针指向子类的对象,在函数(方法)调用的时候可以调用到正确版本的函数(方法)。
使用多态的条件:

1.子类必须重写父类的方法

2.父类指针指向子类对象

多态的应用场景:

用一个父类的指针指向子类的对象

//1.创建一个Human类

//Human.h
@property(nonatomic,strong)NSString *name ;
-(void)show ;

//Human.m
-(void)show{
NSLog(@”%@”,self.name);
}

//2.创建一个Student类,继承于Human类
//Student.h
@property(nonatomic,strong)NSString *stuID ;
-(void)display ;

//Student.m
-(void)show {
NSLog(@”————–”) ;
}
-(void)display {
NSLog(@”%@,%@”,self.name,self.stuID);
}

//3.创建一个Teacher类,继承于Human类
//Teacher.h
@property(nonatomic,strong)NSString *major;
-(void)print;

//Teacher.m
(void)show {
NSLog(@”*************”);
}
-(void)print {
NSLog(@”名字:%@,课程:%@”,self.name,self.major);
}

原创粉丝点击