很抱歉问了这么一个简单的问题,但我刚刚开始接触 Java,还无法解决这个问题。我直接从书中复制了这段代码,但它没有成功运行。我正在使用 NetBeans。我在车辆类和车辆演示类行旁边看到红灯,上面写着 “重复的类:javaapplication3.Vehicle。”文件名是JavaApplication3.输出是这样的:
错误:发生 JNI 错误,请检查您的安装并重试 线程“main”中的异常 java.lang.InknownClassChangeError: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);
}
}
最佳答案
The file name is JavaApplication3
1) 文件名必须是VehicleDemo.java。
2) class VehicleDemo {
应该是 public class VehicleDemo {
由于您的包名称是“JavaApplication3”,因此您的文件夹必须是“JavaApplication3”,但如果您在其中创建了一个项目并通过向导指定了包名称,NetBeans 会处理它。
关于java - java中在main方法之前声明一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30449572/