Objective-C 方法

 

 

  在接下来的时间里面,我们准备为大家介绍Objective-C中的方法,而什么是方法呢?其实,“方法”就是我们日常生活中所说的“行为”。

 

  那么,我们人类有哪些行为呢?一般情况下,我们人类可以做出以下的行为,例如:行走,跑步,攻击,防御,攀爬,开车,开飞机,开船,开火箭等都是我们人类可以做到的“行为”。

 

  而鱼类有哪些行为呢?一般情况下,鱼类可以做出以下的行为,例如:游泳,但鱼类不能开车,不能开飞机,不能开船。

 

  再举一个例子,例如熊类有哪些行为呢?一般情况下,熊类可以做出以下的行为,例如:行走,跑步,攻击,防御,还有就是冬眠,而冬眠这种行为,人类是没有的。

 

 

 

 

  通过上面所举的例子,相信大家就可以了解到什么是Objective-C中的“方法”,而在接下来的时间里面,我们就需要学习一下,从代码方面如何去描述“方法”。

 

  “方法定义的语法格式”,如下:

 

@interface   类名 
{
  -(返回值类型) 方法名: (参数类型) 参数名1: (参数类型) 参数名n;

 

  +(返回值类型) 方法名: (参数类型) 参数名1: (参数类型) 参数名n;
};

@end

 

语法格式分析

 

(1)方法的定义必须在类中定义。

 

(2)语法格式中,前面的减号“-”代表该方法通过对象来调用。

   语法格式中,前面的加号“+”代表该方法通过类来调用。

 

(3)返回值类型,就是我们前面学习过的变量类型,int , float , char 等的关键字。

   返回值类型,两边都要加上小括号()格式要求不能省略

    

(4)方法名,按变量名命名规则定义即可。

 

(5)一个冒号,格式要求,不能省略。

 

(6)参数类型,就是我们前面学习过的变量类型,int , float , char 等的关键字,以及void类型表示

   不用返回任何类型值。

   参数类型,两边都要加上小括号()格式要求不能省略

 

(7)参数名,按变量命名规则定义即可。

 

(8)一个冒号,用于不同参数之间的分隔,如果只有一个参数,就不用加冒号。

 

(9)一个分号,用于描述方法定义结束。

 

 

 

 

 

 在方法定义完毕以后,我们再来看看方法的实现语法格式:

 

  “方法实现的语法格式”,如下:

 

@implementation   类名 
{
  -(返回值类型) 方法名: (参数类型) 参数名1: (参数类型) 参数名n

   {

      方法的主体部分;

   }

 

  +(返回值类型) 方法名: (参数类型) 参数名1: (参数类型) 参数名n

   {

      方法的主体部分;

   }
};

@end

 

 

语法格式分析

 

(1)方法的实现必须在类外定义。

 

(2)首先,通过@implementation加上类名说明要实现哪个类中的方法,然后,就是一对大括号,

   在大括号中就可以去实现已经定义的类中的方法。

 

(3)写上要实现的方法,必须是类中已经定义好的方法,方法的格式与定义时是一样的,

    都要写上-或+、返回类型、方法名:(参数类型)参数名,这些内容必须与方法定义时一致。

 

(4)加上一对大括号,在大括号中就是方法的主体部分。

    

(5)通过@end说明实现类中的方法结束。

 

 

 

 

  接下来,我们就通过一个例子来定义一个“角色类”,并在类中定义了两个方法,而这两个方法分别用于描述角色的行走与攻击,这样,在游戏进行时,角色才可以作出移动。

 

例子:

 

@interface   Role : NSObject  //定义了类Role,并继承了父类NSObject
{
  @public

    int x;

    int y;

    int pow;
};

  - (void) MoveX : (int) mx : (int) my;  //定义方法MoveX

  + (void) Attack ;                //定义方法Attack

@end

 

 

//实现方法

@implementation role

 -(void)MoveX:(int) mx : (int) my  //实现方法MoveX
 {
   x = mx + my;
 }

 

 + (void) Attack   //实现方法Attack

 {

     pow = 100;

  }

@end

 

例子分析:

(1)类名定义为Role。

 

(2)类中定义了两个属性,分别是X与Y。

 

(3)类中定义了两个方法,分别是MoveX与Attack。

 

(4)然后,实现了方法MoveX,在方法中,通过接收到的参数mx与my进行了加法运算,并将结果保存

   于类中的属性x里面。

 

(5)然后,再实现了方法Attack,在方法中,对属性y进行了赋值的运算,并将属性y赋值为100。

 

 

 

  非常好,现在,我们已经掌握了Objective-C中的“方法”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用它去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”

 

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

 

 

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

进入游戏学习与训练