objective c 中的继承和多态简单示意(二)
2012-03-08 20:49
316 查看
holydancer原创,如需转载,请在显要位置注明:
转自holydancer的CSDN专栏,原文地址:http://blog.csdn.net/holydancer/article/details/7334377
OC中的继承和J***A,C++都有相似之处,很容易理解,虽然不能多继承,但是有专门的方法和途径解决这个问题,今天只做单继承和多态的简单示范,新建一个Person类,包括.h和.m文件,然后Men类和Women类继承自该类,并重写了继承过来的cry方法,然后在main()方法中创建实例指向父类Person引用,简单多态后输出语句,具体结构如下:
Person.h代码如下:
Person.m代码如下:
接下来是men.h:
然后是men.m:
women.h
women.m
最后在main()方法中进行测试:
最后得到以下输出结果:
关键字:objective-c ,objective c , oc ,继承,多态 ,面向对象
转自holydancer的CSDN专栏,原文地址:http://blog.csdn.net/holydancer/article/details/7334377
OC中的继承和J***A,C++都有相似之处,很容易理解,虽然不能多继承,但是有专门的方法和途径解决这个问题,今天只做单继承和多态的简单示范,新建一个Person类,包括.h和.m文件,然后Men类和Women类继承自该类,并重写了继承过来的cry方法,然后在main()方法中创建实例指向父类Person引用,简单多态后输出语句,具体结构如下:
Person.h代码如下:
#import <Foundation/Foundation.h> @interface Person : NSObject { int age; NSString *name; } -(void)setAge:(int)age setName:(NSString *)name;//age 和 name的set方法 -(void)cry; //呆会儿子类继承该方法后要复写 //下面是age和name的get方法,不写get是因为OC中get方法一般以指针为参数; -(int)age; -(NSString *)name; @end
Person.m代码如下:
#import "Person.h" @implementation Person -(void)setAge:(int)a setName:(NSString *)n { name=n; age=a; } -(int)age { return age; } -(NSString *)name { return name; } -(void)cry { NSLog(@"是人都会哭"); } @end
接下来是men.h:
#import "Person.h" @interface men : Person @end
然后是men.m:
#import "men.h" @implementation men -(void)cry { NSLog(@"男人就要哭得响亮"); } @end
women.h
#import "Person.h" @interface women : Person @end
women.m
#import "women.h" @implementation women -(void)cry { NSLog(@"女人就是要哭得委婉"); } @end
最后在main()方法中进行测试:
#import <Foundation/Foundation.h> #import "Person.h" #import "men.h" #import "women.h" int main(int argc, const char * argv[]) { @autoreleasepool { Person *person = [Person new]; Person *man = [men new];//子类对象指向父类引用; Person *woman = [women new]; [man setAge:23 setName:@"男人"];//子类对象使用继承来的方法; [woman setAge:21 setName:@"女人"]; NSLog(@"我的名字是%@,我的年龄是%d",[man name],[man age]); NSLog(@"我的名字是%@,我的年龄是%d",[woman name],[woman age]); [person cry];//父类中的cry方法; [man cry]; //子类对象复写了父类的方法; [woman cry]; } return 0; }
最后得到以下输出结果:
关键字:objective-c ,objective c , oc ,继承,多态 ,面向对象
相关文章推荐
- objective c 中的继承和多态简单示意(二)
- objective c 中的继承和多态简单示意(二)
- objective c 中的继承和多态简单示意(二)
- 黑马程序员_ Objective C 封装,继承,多态总结
- 关于封装,继承,多态三个概念的简单理解
- java中面向对象三大思想(继承、封装、多态)简单应用
- Java打造简单的游戏数据库(继承与多态的应用)
- 简单的封装继承多态
- 简单理解Java中的类、对象、继承、多态等概念
- objective C程序 封装、继承及多态
- c++继承与多态概念的简单总结
- C#多重继承 + 多态 + 扩展方法 简单示例
- ES6 继承、多态简单demo
- JAVA的三大特征 封装继承多态- 简单总结
- c语言中继承和多态的简单实现
- C#中简单的继承和多态
- 关于java 继承和简单多态
- C++多态、继承的简单分析
- C++多态、继承的简单分析
- php类的封装、继承和多态的简单理解