|NO.Z.00011|——————————|^^ 报错 ^^|——|Java&编程环境.V11|——|Java.v07|报错处理.v01|
附录一:报错处理一:
### --- 报错现象:模拟错误:单词拼写错误
~~~ # 编写Java程序class写成clas
public clas HelloWorld/*类名*/ {/*类体*/
~~~ # Javac编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
HelloWorld.java:9: 错误: 需要class, interface或enum
public clas HelloWorld/*类名*/ {/*类体*/
^
HelloWorld.java:11: 错误: 需要class, interface或enum
public static void main/*主方法名,程序的入口*/(String[] args) {/*主方法体*/
^
HelloWorld.java:14: 错误: 需要class, interface或enum
}
^
3 个错误
### --- 报错分析:
~~~ 报错信息:HelloWorld.java第9行错误:
~~~ 需要一个class interface 或enum
~~~ 遇到这类错误就是class或者interface单词写错了
~~~ 在clas下有个小箭头:这个小箭头指向谁谁就错了
### --- 解决方案:
~~~ # 修改java程序下class单词
public class HelloWorld/*类名*/ {/*类体*/
~~~ # 编译java程序
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
~~~ # 打印输出
D:\JAVA\jdk-11.0.2\bin>java HelloWorld
我就不打印Hello World!
附录二:报错处理二:
### --- 报错现象:模拟错误:找不到符号
~~~ # 修改java程序的拼写:String写成string小写
public static void main/*主方法名,程序的入口*/(string[] args) {/*主方法体*/
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
HelloWorld.java:11: 错误: 找不到符号
public static void main/*主方法名,程序的入口*/(string[] args) {/*主方法体*/
^
符号: 类 string
位置: 类 HelloWorld
1 个错误
### --- 报错分析:
~~~ 找不到符号
~~~ 小箭头指向谁谁就错误,
~~~ 但是小箭头指向了注释;注释一般是很少错误的,只能找小箭头后面的代码
### --- 解决方案:
~~~ # 修改错误符号
public static void main/*主方法名,程序的入口*/(String[] args) {/*主方法体*/
~~~ # 编译
~~~ # 编译java程序
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
~~~ # 打印输出
D:\JAVA\jdk-11.0.2\bin>java HelloWorld
我就不打印Hello World!
附录三:报错处理三:
### --- 报错现象:模拟错误:找不到符号
~~~ # 修改java程序:少些一个分号
System.out.println("我就不打印Hello World!")
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
HelloWorld.java:11: 错误: 找不到符号
public static void main/*主方法名,程序的入口*/(string[] args) {/*主方法体*/
^
符号: 类 string
位置: 类 HelloWorld
1 个错误
### --- 报错分析:
~~~ 报错信息特别直白
~~~ 需要一个分号
~~~ 给它添加分号即可
### --- 解决方案:
~~~ # 修改java程序参数
System.out.println("我就不打印Hello World!");
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
~~~ # 打印输出
D:\JAVA\jdk-11.0.2\bin>java HelloWorld.java
我就不打印Hello World!
附录四:报错处理四:
### --- 报错现象:模拟错误:非法字符
~~~ # 模拟错误:分号写成中文形式的
System.out.println("我就不打印Hello World!");
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
HelloWorld.java:13: 错误: 非法字符: '\uff1b'
System.out.println("我就不打印Hello World!");
^
1 个错误
### --- 报错分析:
~~~ 只要看到非法字符
~~~ 就是中英文的问题导致的
### --- 解决方案:
~~~ # 修改参数
System.out.println("我就不打印Hello World!");
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
~~~ # 打印输出
D:\JAVA\jdk-11.0.2\bin>java HelloWorld
我就不打印Hello World!
附录五:报错处理五:
### --- 报错现象:main写成mian
~~~ # 模拟错误:main写成mian
public static void mian/*主方法名,程序的入口*/(String[] args) {/*主方法体*/
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
~~~ # 打印输出
D:\JAVA\jdk-11.0.2\bin>java HelloWorld
错误: 在类 HelloWorld 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application
### --- 报错分析:
~~~ 编译是不会报错
~~~ 但是运行就会报错
### --- 解决方案:
~~~ # 修改错误参数
public static void main/*主方法名,程序的入口*/(String[] args) {/*主方法体*/
~~~ # 编译
D:\JAVA\jdk-11.0.2\bin>javac HelloWorld.java
~~~ # 打印输出
D:\JAVA\jdk-11.0.2\bin>java HelloWorld
我就不打印Hello World!
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv001-Java语言基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通