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

在线编译器运行Java代码时类名与文件名一致报错的解决方法

报错根因

Java 语言有强制语法规则:被public修饰的顶层类,类名必须和所在代码文件的文件名完全一致(大小写严格匹配)。
你当前的代码文件名为Main.java,但代码中定义的public类名为primeno,二者不匹配,因此触发编译错误,对应报错原文:

Main.java:2: error: class primeno is public, should be declared in a file named primeno.java
public class primeno

修复方案

两种方案任选其一即可,优先选操作更简单的:

  • 方案一:修改类名适配现有文件名
    直接把代码里的public类名从primeno改成Main,和现有Main.java文件名匹配即可,修改后的对应代码段如下:
    import java.util.Scanner;
    public class Main
    {
      public static void main (String args[])
      {
    
  • 方案二:修改文件名适配现有类名
    如果不想改动现有类名,就把代码文件的名称从Main.java重命名为primeno.java,保证文件名和public类名完全一致即可,这种情况不需要调整代码内容。

注意:匹配规则大小写敏感,比如类名写PrimeNo时,文件名也必须对应为PrimeNo.java,命名有大小写偏差依然会触发同类报错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 10:54:17