XxwGit 的个人博客

记录精彩的程序人生

目录
Eclipse中如何进行断点调试
/  

Eclipse中如何进行断点调试

什么是断点调试

想要成为一名优秀的程序员,那么你必须会写代码+看代码+改代码,写代码容易,看代码难,改代码更难,写代码你可以有自己清晰的思路,但是看代码就需要你去逐步了解别人的思路,改代码就必须要十分熟悉前作者的思路。

无论是自己写代码还是去看别人的代码,都必须要十分熟练的使用断点调试这一项技能,那么什么是断点调试?我们应该怎样合理的使用断电调试来测试我们的代码呢?下面我会详细讲解断点调试(debug)的使用。

首先来说下什么是断点调试,断点调试是指自己在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。

所需工具:eclipse

在需要的位置打上断点

什么是需要的位置?

那么我们怎么会知道在哪里打上断点呢?如果你是自己写的代码,那么你一定也会清楚自己代码的逻辑,你需要测试哪一块的bug你就在那一块附近打上bug,进行调试即可,如果是你是在参考别人的代码,那可以从开始处不理解的位置开始打断点。

如果你实在不知道在哪设置断点,那你完全可以多设置几个断点,单步调试直到找到异常,这样会多花一点时间,但是却可以更加深入的了解程序的执行过程。

如果你大致知道哪里出现了错误问题,或者异常信息报告类的位置,那么你就可以在这里设置断点

设置断点

条件断点

条件断点:顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才会在运行到断点处时停止
在左边的栏目上,鼠标右键,选择"Breakpoint Properties......"

断点的属性界面以及各个选项的意思,如下图:
file

变量断点

变量断点:将断点打在变量声明处
下图就是在一个变量上打的断点,在变量值的初始化,或是变量值改变时可以停止,当然变量断点上也是可以加条件的,和 上面的介绍的条件断点的设置是一样的
file

方法断点

方法断点:将断点打在方法的入口处
方法断点的特别之处在于它可以打在 JDK的源码里,由于 JDK 在编译时去掉了调试信息,所以普通断点是不能打到里面 的,但是方法断点却可以,可以通过这种方法查看方法的调用栈
file

断点调试

打开Debug模式的三种方式

  • 点击"打开透视图"按钮,选择调试透视图,则打开调试透视图界面,然后先设置断点,按调试按钮则可以调试程序
    file
  • 或者直接点击调试按钮,那个虫子样子的按钮,然后就会进入调试透视图的界面。前提你需要是要在程序中设置好断点
    file
  • 或者右键单击该程序,选择debug as(调试方式) -> java application(Java应用程序),则可以调试程序了。前提你需要是要在程序中设置好断点
    file

调试快捷键

以debug方式运行java程序后

  • (F5)单步执行程序,遇到方法时进入:按F5就是一层层深入的debug相当于剥葱样,会进入每个方法内部;
  • (F6)单步执行程序,遇到方法时跳过: 按F6就是在当前函数一步步debug,不理会深层次运作;
  • (F7)单步执行程序,从当前方法跳出: 按F7就是如果当前进入了某个方法内部,都跳转到该方法的结尾代码处;
  • (F8)直接执行程序。遇到断点时暂停: 按F8就是如果后面还有断点,则运行到下一断点处,否则运行完程序;

另外在debug时,会有很多有用信息显示在debug框里,如堆栈信息,需要自己实践;在程序界面里,鼠标移到变量上时会有当前变量的属性值。
file

改变变量的值

在变量窗口中右击变量,在弹出的菜单中选择[change value],弹出修改画面。 改变其值后,按下ok按钮;这时变量的值就改为修改后的值了。

第一步:点击"Change Value...."
file
第二步:插入值
file
第三步:修改值
file

检查代码段执行结果

下面按钮第一个是进入方法执行,比如你调用了其他方法,可以进入方法一步一步执行,如果点击第二个按钮,只会在本方法内一步一步执行,第三个按钮时你跳出此方法,继续执行调用这个方法的原方法,说明如下。
file

在程序运行的时候,想看看某段程序运行的结果是否正确,或者查看某个变量的值时:

  • 选择一句或一段代码,右键单击在弹出的菜单中选择Watch(创建查看表达式)项,此时,代码的执行结果将显示在Expressions(表达式)窗口中。
  • 选择一句或一段代码,右键单击在弹出的菜单中选择Inspect(检查)项,可以直接显示表达式的值
    file
    在eclipse程序中设置的断点上有一个斜杠,正常启动debug不能够跳转到debug页面,怎么解决?

在run菜单里面,把"skip all breakpoints"选项勾去即可,这个选项可能是你无意间选上的。


标题:Eclipse中如何进行断点调试
作者:XxwGit
地址:http://xxwgit.cn/solo/articles/2019/08/25/1566670072561.html

评论