如何从另一个类更改变量的值,并仍然能够在另一个类中更改它?

时间:2015-11-25 00:27:20

标签: java

所以我对编程已经相当新,可能只有不到一年的时间。我是Java的新手(我以前做过C ++)。所以我在名为Fighting的类中有像numberHealthPotions,health,attackDamage等变量。但是在我的主要课堂上,游戏中有一些角色可以让角色拿起武器,拿起魔药,或者受伤。我只需要一种方式在我的主要课堂上说他受伤然后改变角色健康的价值或其他。

这只是我的代码的一小部分,可以给你一个想法......

else if(inputHKitchen.equalsIgnoreCase ("examine")){
                System.out.println("Examine what?");
                examineWhat = in.nextLine();
                if(examineWhat.equalsIgnoreCase("drawer")){
                    System.out.println("\tYou found a knife!");
                    attackDamage = 50;
                    System.out.println("\tYour attack damage has been increased!\n");
                    System.out.println(houseKitchen);
                }

2 个答案:

答案 0 :(得分:1)

如果您的变量是静态的,那么它可能是

//note this variable must be public or protected
Player.HEALTH = 0;

如果它不是静态的,那么

Player p = new Player();
p.HEALTH = 0;

答案 1 :(得分:1)

我会为管理这些不同值的角色编写一系列公共方法。

例如,在YourCharacter类中:

private int attackDamage;

public void addDamage(int value)
{
    attackDamage += value;
}

然后在你的代码段中:

if (examineWhat.equalsIgnoreCase("drawer")){
    yourCharacter.addDamage(50);
}

可以在java-gaming.org

找到很多关于Java的好的游戏写作建议