我想将对象设置为等于1和其他,但是当我这样做时,我收到以下错误:
“线程中的异常”主“java.lang.Error:未解决的编译问题: 重复的局部变量电流 在objectx3Problem.mainmethod.main(mainmethod.java:15)重复本地变量h1“
这是我的源代码:
public class mainmethod {
public static void main(String[] args) {
// TODO Auto-generated method stub
human h1 = new human();
human h2 = new human();
human current = new human();
System.out.println(h1.getHealth());
human current = h1; // error here
current.DecreaseHealth();
human h1 = current; //error here
System.out.println("h1 has " + h1.getHealth() + "health");
}
}
和
public class human {
private int Health = 100;
public int getHealth(){return Health;}
public void setHealth(int Health){this.Health = Health;}
public void DecreaseHealth()
{
Health = Health - 5;
}
}
我在这里阅读了同样的问题setting objects equal to eachother (java),
但我不明白最佳答案和我的方法有何不同。
提前致谢
答案 0 :(得分:4)
错误很简单:
您在此处定义了一个变量:
human current = new human();
然后你尝试在这里创建相同的变量:
human current = h1; // error here
正确的方法是不使用类型:
current = h1;
另一个变量相同。
注意请务必阅读并正确使用Java Naming Conventions