在 Visual Studio Code 编译错误中调试 Java

san*_*ark -1 java visual-studio-code vscode-debugger

我正在尝试使用 VS 代码中的 Java 扩展包调试一个简单的 Java 程序。我对 Java 编程很陌生,我阅读了用 VS 代码编写 Java https://code.visualstudio.com/docs/java/java-tutorial以了解如何调试 Java 代码。我能够运行代码但是当我将我的类 BicycleDemo 设为 public 而不是包(默认)访问修饰符时,我有一个“线程“main”中的异常 java.lang.Error:未解决的编译问题:”

如果我的类 BicycleDemo 没有 public 关键字,它就可以正常工作。为什么是这样?

class Bicycle {
    int cadence = 0;
    int speed = 0;
    int gear = 1;

    void changeCadence(int newValue) { cadence = newValue; }
    void changeGear(int newValue) { gear = newValue; }
    void speedUp(int increment) { speed = speed + increment; }
    void applyBrakes(int decrement) { speed = speed - decrement; }
    void printStates() {
    System.out.println("cadence:" + cadence + " speed:" + speed + " gear:" + gear);
    }
}

public class BicycleDemo {
public static void main(String[] args) {
    // Create two different Bicycle objects
    Bicycle bike1 = new Bicycle();
    Bicycle bike2 = new Bicycle();
    // Invoke methods on those objects
    bike1.changeCadence(50);
    bike1.speedUp(10);
    bike1.changeGear(2);
    bike1.printStates();
    bike2.changeCadence(50);
    bike2.speedUp(10);
    bike2.changeGear(2);
    bike2.changeCadence(40);
    bike2.speedUp(10);
    bike2.changeGear(3);
    bike2.printStates();
    }
}
Run Code Online (Sandbox Code Playgroud)

cyb*_*sam 5

publicclass必须.java在同名文件中声明(并且位于与包名称相对应的目录结构中,如果有的话)。

您的问题可能是包含 public 的文件BicycleDemo未命名BicycleDemo.java