昨天小白作者经历了一场冷酷的考试洗礼,4.5个编译错误和运行错误的判断彻底把我整蒙圈了。相信有很多小伙伴跟我一样蒙圈,不过经过不懈的努力查找与思考,总结了自己的一些想法跟大家分享一下~~
在解释编译错误和运行错误之前,先跟大家介绍一下Java源代码是如何指挥操作系统的(已经了解的小伙伴可直接跳过)。
一、什么是编译和运行
Java源代码编译运行过程:
Java源代码→字节码(Byte Code)→操作系统指令码
Java源代码经过JDK(Java Develoption Kit,Java开发工具)将源代码转换成字节码(JVM能识别的指令码),然后字节码通过JVM(Java Virtual Machine,Java虚拟机)转换成相应的操作系统指令码。这样操作系统就能够执行Java源代码想做的事了。也就是源代码(.java结尾文件)转换成字节码(.class结尾文件)的过程是编译,字节码转换成指令码并执行成为运行。
二、Java编译错误和运行错误判断:
简单易懂方法:
如果有eclipse这种类似软件(可以在软件上直接编译运行的),在敲代码的时候发现左侧的行数上显示了红色的叉叉,这时候所提示的便是你程序中的编译错误(语法错误),这种错误是不符合Java基本语法的错误。
当你写完程序,发现左侧一个叉叉也没有(没有语法错误~)的时候,淡定的去点绿色按钮(Run)键进行运行时,控制台结果给了你一串带红色的解释,这时候就说明你的程序出现了运行错误。
如果使用的是记事本一类,只能写代码的软件,则就在命令提示符(俗称cmd)中输入javac + 文件名.java 这条命令,如果出现了错误,则此时的错误就是编译错误,当编译通过,使用 java + 文件名 进行运行时,如果出现错误,则这时的错误就时运行错误。
举例
逻辑错误(语法错误)
常见的有:表达式不完整,缺少必要符号,变量未初始化(赋值),关键字输入错误,数据类型不匹配等等
运行错误
常见的有:除法运算时除数为0,数组下标越界,文件打不开,磁盘空间不够,数据库连接错误等等
扩展:
编译错误:基础的语法错误
运行错误:运行时出现的错误
逻辑错误:可编译运行,但未达到程序功能预期
下次做题只要想想我这段代码打完会不会在左侧出现叉叉就能分辨是什么错误了,希望小伙伴看完能够不再蒙圈,如果觉得有用记得点个赞呀~