Java应用程序没有';t显示输出

Java应用程序没有';t显示输出,java,compilation,Java,Compilation,以下是我的更新代码: package car1; 公共班机{ 公共静态void main(字符串[]args){ 类HondaCivic实现car1{ int speed = 0; int rpm = 0; int gear = 1; public void speedUp(int Increment) { speed = speed + Increment;} public void applyBrakes(int Decrement) { speed = speed -

以下是我的更新代码:

package car1;
公共班机{

公共静态void main(字符串[]args){

类HondaCivic实现car1{

int speed = 0;
int rpm = 0;
int gear = 1;

public void speedUp(int Increment) {
    speed = speed + Increment;}

public void applyBrakes(int Decrement) {
    speed = speed - Decrement;}

public void changeRpm(int NewValue) {
    rpm = NewValue;}

public void changeGear(int NewValue) {
    gear = NewValue;}

public void printStates() {
    System.out.println("speed:"+speed+" rpm:"+rpm+" gear:"+gear);}
}

} } }


应用程序将不显示输出。我不知道该怎么办。有什么建议吗?

与大多数编程语言一样,Java是区分大小写的<代码>类与

不同,Java与大多数编程语言一样,区分大小写<代码>类与

不同,我可以发现几个问题,其中一些问题您可能已经解决了:

  • Class
    在第二个类的定义中需要是
    Class
    (小写)
  • Car
    不是一个接口,因此您必须
    扩展它,而不是实现它
  • HondaCivic
    不是抽象的或接口,因此它必须为每个方法都有方法体;或者,不使用HondaCivic的方法,在这种情况下,将使用
    Car
    的方法
  • 在当前的类布局中,如果创建一个Honda Civic对象而不是类,则更有意义,因为它没有新的功能:

    Car hondaCivic = new Car();
    

    我可以发现几个问题,有些问题您可能已经解决了:

  • Class
    在第二个类的定义中需要是
    Class
    (小写)
  • Car
    不是一个接口,因此您必须
    扩展它,而不是实现它
  • HondaCivic
    不是抽象的或接口,因此它必须为每个方法都有方法体;或者,不使用HondaCivic的方法,在这种情况下,将使用
    Car
    的方法
  • 在当前的类布局中,如果创建一个Honda Civic对象而不是类,则更有意义,因为它没有新的功能:

    Car hondaCivic = new Car();
    

    Java区分大小写:

    Class HondaCivic implements Car {
    
    与法律语法不同:

    class HondaCivic implements Car {
    

    Java区分大小写:

    Class HondaCivic implements Car {
    
    与法律语法不同:

    class HondaCivic implements Car {
    

    接口需要从其父接口实现所有方法。你正在实现除

    printStates()
    
    另外,检查类声明的大小写敏感度


    编辑:nvm its未声明为抽象

    接口需要从其父接口实现所有方法。你正在实现除

    printStates()
    
    另外,检查类声明的大小写敏感度


    编辑:nvm未声明为摘要

    您的代码存在许多问题

    首先让汽车成为一个像
    interface Car

    其次,将所有代码从
    HondaCivic
    移动到
    Car
    ,并将所有代码从
    Car
    移动到
    HondaCivic
    ,即交换代码,因为接口只能有方法声明和变量,不能实现。实现接口的类需要提供所有这些方法的实现

    最后,在main方法中,编写此代码,而不是生成Car实例所需的代码

    Car car1 = new HondaCivic();
    Car car2 = new HondaCivic();
    

    然后它将编译并运行。

    您的代码有很多问题

    首先让汽车成为一个像
    interface Car

    其次,将所有代码从
    HondaCivic
    移动到
    Car
    ,并将所有代码从
    Car
    移动到
    HondaCivic
    ,即交换代码,因为接口只能有方法声明和变量,不能实现。实现接口的类需要提供所有这些方法的实现

    最后,在main方法中,编写此代码,而不是生成Car实例所需的代码

    Car car1 = new HondaCivic();
    Car car2 = new HondaCivic();
    

    然后它将编译并运行。

    我添加了这一点,但仍然得到两个错误:解析时到达文件末尾}和编译失败;有关详细信息,请参阅编译器错误输出。构建失败(总时间:0秒)我添加了这一点,但仍然得到两个错误:解析时到达文件末尾}和编译失败;有关详细信息,请参阅编译器错误输出。生成失败(总时间:0秒)修复了该问题,但仍然出现两个错误:解析时到达文件结尾}和编译失败;有关详细信息,请参阅编译器错误输出。生成失败(总时间:0秒)修复了该问题,但仍然出现两个错误:解析时到达文件结尾}和编译失败;有关详细信息,请参阅编译器错误输出。构建失败(总时间:0秒)我添加了这一点,但仍然得到两个错误:解析时到达文件末尾}和编译失败;有关详细信息,请参阅编译器错误输出。生成失败(总时间:0秒)看起来您在
    CarDemo
    类末尾缺少
    }
    字符。这就是为什么您应该采用一致的缩进样式,而不是上面使用的随意缩进样式。如果您正确缩进了
    main
    ,很明显这个类并没有关闭;有关详细信息,请参阅编译器错误输出。生成失败(总时间:0秒)看起来您在
    CarDemo
    类末尾缺少
    }
    字符。这就是为什么您应该采用一致的缩进样式,而不是上面使用的随意缩进样式。如果你正确缩进了
    main
    ,很明显这个类并没有关闭。我编辑了我的第一篇文章。我试着照你说的做,但我真的听不懂。我的代码运行不需要HondaCivic,我只是把它放在那里,因为我认为我必须在接口或其他地方实现它。一个类应该有它所有方法的方法体。如果没有方法体,则必须将方法声明为抽象,因此也必须将类声明为抽象。此外,您不能创建抽象类的对象。所以,如果你所要做的就是拥有一个类,创建它的对象并调用它的一些方法,那么你就不必声明