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;
[card1 printAccount];
//父类指针指向子类对象,实际上仍然时调用子类card2中的打印方法,因为card1指针指向card2对象
相关推荐
昭君出塞 2020-06-13
worldsnow 2020-11-06
csdnxingyuntian 2020-11-02
丽丽 2020-10-30
bluecarrot 2020-09-17
哈嘿Blog 2020-08-16
qidiantianxia 2020-08-16
84931231 2020-07-30
ChenRuiyz 2020-07-26
yanqianglifei 2020-07-07
wbczyh 2020-07-05
BOBShe 2020-07-03
yang0cs 2020-06-28
fushilin 2020-06-28
清水寺小僧 2020-06-25
uileader 2020-06-21
wangyangsoftware 2020-06-16
cleanerxiaoqiang 2020-06-16