抱歉,这样的问题很简单,但是我只是从Java开始,而我还不能解决这个问题。我是直接从书中复制此代码,但未成功运行。我正在使用NetBeans。我在类Vehicle和类VehicleDemo行旁边看到红灯说
“重复的类:javaapplication3.Vehicle。”文件名是JavaApplication3。输出是这样的:

错误:发生了JNI错误,请检查您的安装并重试
线程“主”中的异常java.lang.IncompatibleClassChangeError:javaapplication3.Vehicle和javaapplication3.Vehicle $ VehicleDemo在InnerClasses属性上存在分歧

package javaapplication3;

/**
*
* @author cs
*/


class Vehicle {
  int passengers;
  int fuelcap;
  int mpg;
}

class VehicleDemo {
   public static void main(String[] args) {
      Vehicle minivan = new Vehicle();
      int range;

      minivan.passengers = 7;
      minivan.fuelcap = 16;
      minivan.mpg = 21;

    range = minivan.fuelcap * minivan.mpg;
    System.out.println("Minivan can carry " + minivan.passengers + " with a   range of " + range);
    }
 }

最佳答案

文件名是JavaApplication3


1)文件名必须是VehicleDemo.java。
2)class VehicleDemo {应该是public class VehicleDemo {

因为您的软件包名称是“ JavaApplication3”,所以您的文件夹必须是“ JavaApplication3”,但是如果您在其中创建了一个项目并通过向导指定了软件包名称,则NetBeans会处理它。

09-26 23:20