标签:objective c 继承
Objective c中实现类的初始化要先重载父类的init方法:
1.首先调用[super init]使用父类的方法进行初始化,将对象赋给self
2.如果self不为nil即父类初始化成功,接着进行本类的初始化
3.返回self给调用者
@implementation Test -(id)init { if(self = [super init]) { //本类的初始化代码 //.......... } return self; } @end
虚方法
1.调用时不看指针看对象,称为虚方法
2.OC中所有的方法都是虚方法
3.父类的指针可以指向子类对象
有两个类 card1.h @interface Card1 : NSObject { int money; } @property (nonatomic,assign) int money; -(void)printAccount; card2.h @interface Card2 : Card1 - (void)printAccount; @end 在main.m中 Card2 *card2=[[Card2 alloc] init]; card2.money=1000; Card1 *card1=card2; <pre name="code" class="objc">[card1 printAccount];//父类指针指向子类对象,实际上仍然时调用子类card2中的打印方法,因为card1指针指向card2对象
标签:objective c 继承
原文地址:http://blog.csdn.net/codebat/article/details/40536137