You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Linux终端的Java程序中引入自定义类文件?

问题解决:运行Main.java提示找不到Car类

核心问题

用java Main.java单文件运行时,JVM对依赖类的加载逻辑和预先编译的字节码存在冲突;另外代码里还有方法调用名称不匹配的问题,会导致后续运行报错。

解决步骤

方法一:同时编译并运行所有源文件

直接执行以下命令,JVM会自动编译并运行两个关联的源文件,无需单独编译Car.java:

java Main.java Car.java

方法二:先编译所有类,再运行

  1. 编译目录下所有.java文件:
javac Main.java Car.java
  1. 编译完成后,运行Main类:
java Main

必须修正的代码错误

Main类中调用的方法和Car类定义的方法名称不匹配,需修改如下:

  • 将car1.drive()改为car1.driveCar()
  • 将car2.horn()改为car2.hornCar()
  • 将car2.light()改为car2.lightCar()

修正后的Main.java代码:

public class Main {
    public static void main(String[] args) {
        Car car1 = new Car("Chevrolet", "Monte Carlo SS", "Red", 2001, 5000.00F);
        Car car2 = new Car("Ford", "F150", "Black", 2018, 15000.00F);

        System.out.printf("Make of car1: %s\n", car1.make);
        System.out.printf("Model of car1: %s\n", car1.model);
        car1.driveCar();

        System.out.printf("Make of car2: %s\n", car2.make);
        System.out.printf("Price of car2: $%.2f\n", car2.price);
        car2.hornCar();
        car2.lightCar();
    }
}

内容的提问来源于stack exchange,提问作者HornedAccomplice

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 00:35:35