You need to enable JavaScript to run this app. 为什么VS Code中Java类前加public会出现未解决的编译问题?
优惠活动
大模型
产品
解决方案
定价
更多

为什么VS Code中Java类前加public会出现未解决的编译问题?

报错根本原因

  • Java语法有明确强制规则:如果一个类使用public修饰符声明,该类所在的源代码文件名必须和类名完全一致,大小写也必须完全匹配
    你给出的报错信息中明确写了at Variable.main(Array.java:3),说明你的源代码文件命名是Array.java,但你public修饰的类名是Variable,二者完全不匹配,因此编译阶段就会报错,运行时直接抛出未解决编译问题的异常。
  • 当你删除class Variable前的public修饰符后,该类变为默认访问权限,不再要求类名和文件名严格一致,编译可以正常通过,因此程序可以正常运行。

修复方案

二选一即可:

  • 保留类的public修饰,将源代码文件名从Array.java修改为Variable.java,注意大小写完全对应
  • 保留现有Array.java文件名不变,移除类前的public修饰符

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 11:48:01