Objective-C 多态
在接下来的时间里面,我们准备为大家介绍Objective-C中的"多态“。
(1)多态就是在不同的类中,有相同名字的方法。
(2)当有相同名字的方法调用时,会根据调用它的对象来决定调用哪个类中的方法。
接下来,我们结合例子作进一步的学习。
//===================//
//------定义了Role类-----//
//===================//
@interface Role : NSObject
{
int x;
int y;
}
- (void) Move; //移动方法
@end
@implementation Role
-(void) Move
{
x = x + 1;
}
@end
//===================//
//-------定义了Man类-----//
//===================//
@interface Man : NSObject
{
int Mx;
int My;
}
- (void) Move;
@end
@implementation Man
-(void) Move
{
Mx = Mx + 1;
My = My + 1;
}
@end
//-------入口函数main-----//
int main (int argc, const char * argv[]) {
Man *m1 = [ [ Man alloc ] init ]; //通过类Man定义了对象m1,并分配了内存空间与初始化。
Role *r1 = [ [ Role alloc ] init ]; //通过类Role定义了对象r1,并分配了内存空间与初始化。
[ m1 Move ]; //根据对象m1调用了Man类中的Move方法。
[ r1 Move ]; //根据对象r1调用了Role类中的Move方法。
}
非常好,现在,我们已经掌握了Objective-C中的“多态”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用它去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”。
不要停留在理论规则上面,快动起来吧!
(通过游戏模式学习与训练,需要在电脑上运行)