在Visual Studio代码编译错误中调试Java

问题描述 投票:-2回答:1

我正在尝试使用VS代码中的Java Extension Pack调试一个简单的Java程序。我是Java编程的新手,我读到了在VS代码https://code.visualstudio.com/docs/java/java-tutorial中编写Java以了解如何调试Java代码。我能够运行代码但是当我将我的类BicycleDemo作为public而不是包(默认)访问修饰符时,我有一个“线程中的异常”主“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();
    }
}
java visual-studio-code vscode-debugger
1个回答
2
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.