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中的“多态”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用它去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”

 

  不要停留在理论规则上面,快动起来吧!

 

 

(通过游戏模式学习与训练,需要在电脑上运行)

进入游戏学习与训练