Eclipse的debug按钮介绍(三)
本文链接:https://blog.csdn.net/u011781521/article/details/55000066
http://blog.csdn.net/u010075335/article/details/51222493
系列文章
1.表示当前实现继续运行直到下一个断点,快捷键为F8。
2.表示打断整个进程
3.表示进入当前方法,快捷键为F5。
4.表示运行下一行代码,快捷键为F6。
5.表示退出当前方法,返回到调用层,快捷键为F7。
6.表示当前线程的堆栈,从中可以看出在运行哪些代码,并且整个调用过程,以及代码行号
详细介绍:
Step Return : 跳出当前方法,在被调用方法的执行过程中,使用Step Return会在执行完当前方法的全部代码后跳出该方法返回到调用该方法的方法中。
Step Over : 在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完在停止,也就是把子函数整个作为一步。
Step Into:单步执行,遇到子函数就进入并且继续单步执行
Resume:恢复暂停的线程,直接从当前位置跳到下一个断点位置。
Suspend:暂停选定的线程,这个时候可以进行浏览或者修改代码,检查数据等。
Eclipse通过Suspend与Resume来支持线程的暂挂与恢复。一般来讲,Suspend适用于多线程程序的调试,当需要查看某一个线程的堆栈帧及变量值时,我们可以通过Suspend命令将该线程暂挂。Resume用于恢复。有两种Resume需要注意:
- 第一是当在调试过程中修改程序代码,然后保存,点击Resume,此时程序会暂挂于断点。
- 第二是当程序抛出异常时,运行Resume,程序也会暂挂于断点。
Terminate : Eclipse通过Terminate命令终止对本地程序的调试。
Disconnect:Eclipse使用Disconnect命令来终止与远程JVM的socket连接。
Skip All Breakpoints : 将所有断点设置为被跳过的,设置了Skip All Breakpoints之后,所有断点上都会有一个斜线,表示断点将被跳过,线程不会在该断点处被挂起。
Drop to Frame : 这个命令可以让程序回到当前方法的开头第一行重新开始执行,可以重新执行这个java堆栈帧,可以选择一个指定的堆栈帧,然后点击 Drop to Frame,这样就可以重新进入指定的堆栈帧。使用Drop to Frame时候需要注意:
- 1.不能drop到已经执行过的方法栈中的方法中。
- 2.drop到stack frame中时,不会改变全局数据原有的值,比如,一个包含元素的vertor并不会被清空。
Step Filters : 这个功能比较简单,就是当我们在debug的时候想要忽略一些我们不关注的类时,可以开启Step Filters进行过滤,程序会一直执行直到遇到未经过滤的位置或断点。Step Filters功能由Use Step Filters,Edit Step Filters,Filter Type,Filter Package四项组成。具体操作如下:
- 步骤 1: Windows -> Preferences -> Java -> Debug -> Step Filtering.
- 步骤 2:选择‘Use Step Filters’
- 步骤 3:在屏幕上选中所需的选项。你可以添加你自己代码库中的部分代码。
- 步骤 4:点击‘Apply’
原理上,Edit Step Filter命令用于配置Step Filter规则,而Filter Type与Filter Package分别指的是过滤的Java类型与Java Package。