Java 错误:此处不允许使用“void”类型

Java 错误:此处不允许使用“void”类型,java,syntax,void,return-type,Java,Syntax,Void,Return Type,我正在学习使用课程,我的部分作业是制作这门汽车课程。我在第6行遇到一个错误,我试图打印类中方法的结果。我想这意味着我试图打印一些不存在的东西,我怀疑这是里程数法。我试着把它改成返回英里数,但也没用。有什么想法吗 public class TestCar { public static final void main(String args[]) { Car c = new Car (); c.moveForward(4); System.out.println ("

我正在学习使用课程,我的部分作业是制作这门汽车课程。我在第6行遇到一个错误,我试图打印类中方法的结果。我想这意味着我试图打印一些不存在的东西,我怀疑这是里程数法。我试着把它改成返回英里数,但也没用。有什么想法吗

public class TestCar {
  public static final void main(String args[]) {

    Car c = new Car ();
    c.moveForward(4);
    System.out.println ("The car went" + c.mileage() + "miles."); // <-- L6
  }
}

class Car {
  public int miles = 2000;
  public void moveForward(int mf) {
    if (miles != 2000) {
        miles += mf;
    }
  }

  public void mileage() {
    System.out.print(miles);
  }
}

错误消息确切地告诉您出了什么问题-您试图从一个不返回结果的方法中提取结果

相反,让Miledge方法返回一个字符串,而不是打印出一个字符串

public String mileage() {
    return String.valueOf(miles);
}
对于我自己,我会将此作为一种getter方法,而不是:

public int getMiles() {
    return miles;
}

错误消息确切地告诉您出了什么问题-您试图从一个不返回结果的方法中提取结果

相反,让Miledge方法返回一个字符串,而不是打印出一个字符串

public String mileage() {
    return String.valueOf(miles);
}
对于我自己,我会将此作为一种getter方法,而不是:

public int getMiles() {
    return miles;
}
Car.miliety无效,即不返回任何内容。它需要返回一些东西,比如:

public int mileage() {
    return miles;
}
Car.miliety无效,即不返回任何内容。它需要返回一些东西,比如:

public int mileage() {
    return miles;
}

访问器方法也有很多错误,字段hidingMiledge可以,但它可以返回一个int。不需要转换为字符串。访问器方法也有很多错误,字段hidingMiledge可以,但它可以返回一个int。不需要转换为字符串。那辆车不前进。那辆车不前进。