Java 我的东西没有印出来
我是Java新手,正在尝试制作一个简单的程序来跟踪燃料的使用情况。我认为这是一个很好的练习Java 我的东西没有印出来,java,object,Java,Object,我是Java新手,正在尝试制作一个简单的程序来跟踪燃料的使用情况。我认为这是一个很好的练习 public class MyJavaProgram { static Car myCar = new Car("Audi"); public static void main(String[] args) { System.out.println(myCar); myCar.refuel(100); myCar.drive(50);
public class MyJavaProgram {
static Car myCar = new Car("Audi");
public static void main(String[] args) {
System.out.println(myCar);
myCar.refuel(100);
myCar.drive(50);
myCar.drive(20);
}
}
通常在Java中,这段代码会打印出类似“package.Animal@”的内容,但我在控制台中得到的是:
> A new Audi has been created.
>
> Car refilled with 100 liter fuel.
> Car drove 50 km.
> Car drove 20 km.
我的汽车等级:
public class Car {
String type;
int fuel = 0;
int driven;
public Car(String type) {
this.type = type;
System.out.println("A new "+type+" has been created.");
}
public void refuel(int amount) {
fuel += amount;
System.out.println("Car refilled with "+amount+ " liter fuel.");
}
public void drive(int amount) {
fuel -= amount;
driven += amount;
System.out.println("Car drove "+amount+" km.");
}
public String toString() {
return "";
}
}
我看不出我的代码的哪一部分导致了这个bug。我自己不是java向导,但我想象它就是这个小家伙:
public String toString() {
return "";
}
println thingamabob可能会调用objects toString()方法,您已使该方法返回空字符串,而不是默认值
摆脱它或改变它,你应该是金的我自己不是java向导,但我想象它就是这个小家伙:
public String toString() {
return "";
}
println thingamabob可能会调用objects toString()方法,您已使该方法返回空字符串,而不是默认值
如果您希望java调用默认的toString()方法,就不应该定义自己的toString()方法。您的toString()方法返回一个空字符串,因此会将一个空字符串打印到控制台。如果您希望java调用默认的toString()方法,您不应该定义自己的toString()方法。您的toString()方法返回一个空字符串,因此将向控制台打印一个空字符串。您的对象将被打印。只是您用返回空字符串覆盖了toString方法。您的对象已打印。只是您已经用返回一个空字符串覆盖了toString方法。@HF您想打印什么?I not get
package.Animal@
您是指打印hashcode的默认toString()吗?如果是这样,因为您正在重写toString()方法以返回“”,因此该方法上不会显示任何内容line@HF只需删除toString()方法,然后查看。同时移动carmycar=新车(“奥迪”)代码>在侧面main()
。让它成为一个实例变量。给你-->公共字符串toString(){return“Car{type-”+this.type+“fuel-”+this.fuel+“driven-”+this.driven+“}”;}@HF你想打印什么?我不懂package.Animal@
你指的是打印hashcode的默认toString()?如果是这样,因为您正在重写toString()方法以返回“”,因此该方法上不会显示任何内容line@HF只需删除toString()方法,然后查看。同时移动carmycar=新车(“奥迪”)代码>在侧面main()
。将其设为实例变量。现在-->公共字符串toString(){return“Car{type-”+this.type+“fuel-”+this.fuel+“driven-”+this.driven+“}”;}