日期:2014-05-20  浏览次数:20725 次

一个简单的程序,麻烦进来看看
public class GameTest {

public static void main(String args[]){
hunter h = new hunter();
h.name="德龙";
h.life=100;
    h.islife=true;
    Monster m = new Monster();
    m.name="僵尸";
    m.life=80;
        m.islife=true;
h.fight(m);


}
}

class hunter{

int life;
String name;
boolean islife;

public void fight(Monster monster){


System.out.println("------------->"+name+"挥舞着武器"+"杀向"+monster.name+"<---------------");
monster.injured();


}
public void  show(){


System.out.println("*************"+"猎人的life:"+life+"islive:"+islife+"************");
}
}
class Monster{
int life;
String name;
boolean islife;


public void injured(){
System.out.println("*************"+name+"哇哇哇,呜呜呜"+"*************");

life=life-20;

}

public void show()
{

System.out.println("*************"+"怪物的life:"+life+"islive:"+islife+"************");

}
}
public void fight(Monster monster)这个方法中 , Monster monster 是什么意思?是实体化吗? 还是怎么?

------解决方案--------------------
Monster monster = new Monster();

在上面的语句中,等号(=) 左边的叫做 定义一个引用变量,monster叫引用变量(有些人叫它引用);
等号右边的叫Monster类的对象(有些人叫它实例)。

很显然,你说的那个叫做引用变量,用来接收一个对象(也叫实例)的引用(也叫地址)。
专业点的话,可以叫它形式参数(也叫形参)。

举个简单的例子:
一个人手里牵着一个气球。 Monster对象就是那个气球,而你说的那个monster(引用变量)就是手。



希望我的回答能帮到你。