错误的概念与处理
1)语法错误:所谓的语法错误,就是代码不符合Java语言的语法规则。出现语法错误,开发工具会用红色波浪线提示,当鼠标定位其上时,出现错误提示。在代码的右边也会有相应的红色横线提示,这个在代码较多时便于快速定位错误。如图:
由于开发工具不仅提示错误在哪,还提示了是什么错误,所以解决语法非常简单,只需要看懂错误提示并掌握相应语法规则即可。当然还是尽量养成良好的编程习惯,减少出现语法错误的几率。
2)逻辑错误:所谓逻辑错误指的是代码可以运行,但是运行结果与预期的不一样。因为计算机运行快,高速,所以我们只知道结果错了,不清楚错在哪里,更不知道是什么错误,所以纠正逻辑错误就要困难得多。
如果我们清楚调试的基本原理,自我调试的基本方法,问题又会变得简单起来。
调试的工具和方法
调试的基本原理:如果程序能够按照我们希望的节奏走下去,并且能随时查看程序运行的状态,那么调试才有可能。
计算机程序的执行状态一定是可预期的,唯一的。
所以我们可以控制程序的运行和暂停,在暂停时查看这个时刻的状态,和我们预期的正确状态进行对比,如果一致,说明暂时没有问题,继续往后执行。而如果不一致,说明刚刚执行的那条代码有问题,从而就定位错误了。
1)怎么控制程序运行节奏?
设置断点(breakpoint),在代码的行号位置单机即可添加断点,如图:
取消断点,在断点标记上单击即可取消。
开始调试,以debug方式运行,如图:
3)如何查看程序的运行状态,如图:
这里所说的状态有两个含义:表达式的值和程序的运行轨迹
当程序暂停时,将鼠标定位变量时,会提示变量的值,如图;
如果需要更关注表达式的值,可以在watchs中查看。如图;
还可以直接将选中的表达式快捷加到watch窗口中。如图:
调试工具以特定背景色表示当前即将要执行的代码,据此我们可以观察到程序的运行轨迹。如图: