Java学习,携手共进——入门篇(10)
本章讲述java面向对象的方法(为什么连在一块了。。)
(之前在第八章时,所述说的“状态”即为“属性“,即为”面向对象的属性“)
我们进入话题
在lol中,一个英雄可以干很多事,你击败英雄会有“超神”,你坑是“坑队友”,能做什么在类里面就叫做“方法”。
比如有队友正在逃跑,你不但没帮到他,还把他坑死了,这就构成“坑队友”,我们就可以为这个英雄设计一个方法keng(即坑),我们就用Hero这个类设计个方法”坑“。
public class Hero{
String name;
byte DengJi;
。。。。
//坑队友
void keng(){
System.out.println("坑队友");
}
}
在这里,我们创建了一个“坑队友”的方法。“viod”我们一开始就说过,表示“空的”,()里面是参数,没有即为无参数,下一行打印出来的即为“坑队友”(这不是主方法,只是一个方法,一个类里面只能有一个主方法。)。 我们想知道英雄的血量,就用方法来获取英雄的血量。有的方法是有返回类型的。
比如方法:
float getHp(){
return hp;
}
这句话的意思即为获取当前hp的值,hp是多少,他就获取的是多少。有的方法不需要返回值,这时候就把返回值类型调为void,就像上面的代码一样,这里的float即为一个返回类型,伙伴葫芦丝可能会问为什么用viod,为什么不可以空着或者用其他的,因为在Java中,这里是不可以空着的,viod正好为“空”的意思,所以我们用void替换。 英雄升级后,血量和一些属性都会增加,我们也用方法来进行加减。
void addhp(int one){
//在原来的基础上增加移动hp(血量)
hp = hp + one;
}
可以看到,无返回值,参数为int类型,hp是hp+one(注意:这里的one不是1,就像int a=12一样,one和a一个道理。),伙伴葫芦丝可能不懂hp=hp+one,因为其中hp怎么等于hp+one,你可以把右边的hp看作是现在的血量,左边的hp是新的血量,即为:把现在的血量和one值相加,得出新的血量,作为现在的血量。
我们现在为一个英雄添加100点血量:
Hero wei=new Hero();
wei.name="wei";
wei.hp=500;
wei.addHp(100);
总体代码是:
public class Hero {
String name; //姓名
float hp; //血量
float armor; //护甲
int moveSpeed; //移动速度
//坑队友
void keng(){
System.out.println("坑队友!");
}
//获取血量
float getHp(){
return hp;
}
//增加血量
void addHp(int one){
//在原来的基础上增加血量
hp =hp+one;
}
public static void main(String[] args) { Hero wei =new Hero();
wei.name = "wei";
wei.hp = 500;
wei.addHp(100);
}
}
garen.addHp(100);是什么意思呢,我们在上面可以看到,addHp是有参数的,在创建对象wei的时候即把addHp的参数值给声明了。所以在后续加血量的时候,加的值即为100. 在说了这么多方法,我们给他们分别命名了keng,addHp,方法是一个类的动作行为,所以一般都是以动词开头,如果由多个单词,后面单词的第一个字母使用大写,比如addHp。
动手做一下下面的练习吧:
获取当前的防御值,无参数,float返回类型。
设置“第一滴血”的无参数,无返回值。
增加防御值,有参数float类型,hui表示本次恢复血量,无返回类型。
http://cdn.u1.huluxia.com/g4/M03/ED/DE/rBAAdl8rj6OARAqiAACd4crmbUg172.png
页:
[1]