本篇内容介绍了“Java的编译时错误和运行时错误问题怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1. 要区分编译时错误和运行时错误,就应该先明白什么是编译?什么是运行?
首先,先看一下这张图:
编译期就是将我们写的java源代码交给编译器执行的过程,起翻译的作用,该过程主要对java源代码的语法进行检查,如果没有语法错误,就将源代码编译成字节码文件(即.class文件);
运行期则是将字节码文件(.class文件)加载到内存中交给java虚拟机执行,直到程序执行结束的过程,该过程主要对程序的逻辑错误进行检查,如果没有逻辑错误,程序的功能得到实现,输出结果。
2. 编译期和运行期的内存分配区别。
①编译期只是在程序的字节码文件中产生一些控制程序运行时分配内存的指令,仅仅是知道内存分配的大小以及存放的位置,不做具体的分配操作。
②运行期才是对内存真正的分配,确定程序分配内存的大小,以及这些变量该存放内存的位置。
3. 在eclipse开发java项目时,怎么区分编译错误和运行错误?
①编译错误一般指语法错误或者很明显的逻辑错误。
如:缺少分号,少写括号,关键字书写错误等, 在eclipse往往会画红线。
②运行错误是在没有编译错误的基础上运行后产生的逻辑错误。
如:空指针异常,除数为0,越界访问等,一般会抛出异常。
4.例子
下面程序,编辑运行,结果为()
public class Test{ public void main(String[] args){ System.out.println("Hello world"); } }
结果:编译无错误,但运行时产生异常。
在程序的字节码文件中产生一些控制程序运行时分配内存的指令, 仅仅是知道内存分配的大小以及存放的位置, 不做具体的分配操作
是对内存的真正的分配, 确定程序分配内存的大小, 以及这些变量该存放内存的位置
编译错误一般指语法错误或者很明显的逻辑错误, 如 : 缺少分号, 少写括号, 关键字书写错误等
运行错误是在没有编译错误的基础上运行后产生的逻辑错误, 如 : 空指针异常, 除数为0 , 越界访问等
“Java的编译时错误和运行时错误问题怎么解决”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。