当前位置:
首页 >
简单的封装继承多态
发布时间:2025/4/14
42
豆豆
首先创建一个工程, 然后创建一个动物类(Animal),然后再创建一个猫类和一个狗类,最后创建一个人类来给动物喂食。
动物类继承NSObject
而猫类和狗类继承动物类
人类喂食也继承NSObject
动物类
//类的声明#import <Cocoa/Cocoa.h>@interface Animal : NSObject -(void)jiao; -(void)eat; @end//类的实现 #import "Animal.h"@implementation Animal -(void)jiao {NSLog(@"叫"); } -(void)eat {NSLog(@"吃"); } @end猫类
#import "Animal.h"@interface Cat : Animal -(void)jiao; @end#import "Cat.h"@implementation Cat -(void)jiao {NSLog(@"喵喵叫"); } -(void)eat {NSLog(@"猫吃鱼"); } @end
人类喂食
#import <Foundation/Foundation.h> #import "Animal.h" @interface Weishi : NSObject-(void)feed:(Animal *) animal; @end#import "Weishi.h"@implementation Weishi -(void)feed:(Animal *)animal {[animal eat]; } @end
最后在主函数里面实例化对象
#import <Foundation/Foundation.h> #import "Animal.h" #import "Cat.h" #import "Dog.h" #import "Weishi.h" int main(int argc, const char * argv[]) {@autoreleasepool {id test=[[Animal alloc]init];[test jiao];Animal *test1=[[Cat alloc]init];[test1 jiao];id test2=[[Dog alloc]init];[test2 eat];id test3=[[Weishi alloc]init];[test3 feed:test2];}return 0; }最后得到下面的。
当然这基本是最简单了。
转载于:https://www.cnblogs.com/fume/p/5230331.html
总结
- 上一篇: 2014 北京邀请赛ABDHJ题解
- 下一篇: 一个有意思的js小问题