我有两个类,Main.java
和 Car.java
Main.java
:
class Main
{
public static void main(String[] args)
{
Car ferrari = new Car(18, 25.43);
System.out.println(ferrari.efficiency);
}
}
Car.java
:
class Car
{
public Car(double mpg, double initFuel)
{
double efficiency = mpg;
double fuel = initFuel;
}
}
我显然尝试将效率分配给创建对象时传入的第一个构造函数,但这似乎不起作用(即当我在 Main.c 中使用 println
时找不到该变量) java )。如何将变量分配给稍后引用的对象?
最佳答案
您在 Car
的构造函数中使用局部变量。它们的生命周期限制在您的构造函数内。只需在类中声明您的成员并使用 getter 和 setter 来访问它们即可。
class Car
{
private double efficiency;
private double fuel;
public Car(double mpg, double initFuel)
{
this.efficiency = mpg;
this.fuel = initFuel;
}
public void setEfficiency(double efficiency) {
this.efficiency = efficiency;
}
public double getEfficiency() {
return efficiency;
}
// Same thing for fuel...
}
在你的Main
中:
class Main
{
public static void main(String[] args)
{
Car ferrari = new Car(18, 25.43);
System.out.println(ferrari.getEfficiency());
}
}
关于java - 对象的变量——Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57078777/