eclipse debug模式

variables:变量

terminate:结束

launches:开始(应用程序)

suspend:挂起

 

一、debug视图概览

1、常用:

eclipse debug模式

 

1. resume如图中的状态代表程序处于等待中。如果直接点击,表示当前实现继续运行直到下一个断点。快捷键F8

 

2. terminate表示打断整个进程

 

3.表示进入当前方法,快捷键为F5。

 

4.表示运行下一行代码,与3的区别是不会进入子函数,只把子函数作为一个步骤执行完停止。快捷键为F6。

 

5.表示退出当前方法,返回到调用层,会在执行完当前方法的全部代码后跳出该方法返回到调用该方法的方法中。快捷键为F7。

 

6.表示当前线程的堆栈,从中可以看出在运行哪些代码,并且整个调用过程,以及代码行号

eclipse debug模式

 

Veriables:这里存放了当前类中的变量,可查看变量值

 

Breakpoint:这里记录了所有断点记录,可进行跳过、删除断点,查看断点属性(如断点在什么地方打的),其中hit count设置执行次数适合程序中的for循环(设置 breakpoint view-右键hit count)

 

2、拓展

eclipse debug模式

1、Terminate : Eclipse通过Terminate命令终止对本地程序的调试。

2、Disconnect:Eclipse使用Disconnect命令来终止与远程JVM的socket连接。

3、Drop to Frame : 这个命令可以让程序回到当前方法的开头第一行重新开始执行,可以重新执行这个java堆栈帧,可以选择一个指定的堆栈帧,然后点击 Drop to Frame,这样就可以重新进入指定的堆栈帧。使用Drop to Frame时候需要注意:

不能drop到已经执行过的方法栈中的方法中。

drop到stack frame中时,不会改变全局数据原有的值,比如,一个包含元素的vertor并不会被清空。

4、Step Filters : 这个功能比较简单,就是当我们在debug的时候想要忽略一些我们不关注的类时,可以开启Step Filters进行过滤,程序会一直执行直到遇到未经过滤的位置或断点。Step Filters功能由Use Step Filters,Edit Step Filters,Filter Type,Filter Package四项组成。具体操作如下

步骤 1: Windows -> Preferences -> Java -> Debug -> Step Filtering.

eclipse debug模式

步骤 2:选择‘Use Step Filters’

步骤 3:在屏幕上选中所需的选项。你可以添加你自己代码库中的部分代码。

步骤 4:点击‘Apply’

原理上,Edit Step Filter命令用于配置Step Filter规则,而Filter Type与Filter Package分别指的是过滤的Java类型与Java Package。

 

二、Variables View (变量视图)

eclipse debug模式

1.为变量名视图,显示当前代码行中所有可以访问的实例变量和局部变量

2.显示所有的变量值

3.可以通过该窗口来改变变量值

eclipse debug模式

选中变量右击可以进行许多操作

All Instances:打开一个对话框来显示该java类的所有实例

All References::打开一个对话框来显示所有引用了该变量的java对象

Change Value::更改变量的值,该功能可以和Drop to Frame联合使用进行程序的调试。使用这两个功能就可以代替重新debug

Copy Variables:复制变量的值,尤其在变量值很长(比如json数据)的时候,这个功能就派上用场了。

Find:有的时候一个类中变量特别多的时候,可以进行查找。

三、Breakpoints View (断点视图)

eclipse debug模式

1.显示所有断点

2. 将当前窗口1中选中的端口失效,再次点击启用。

3.异常断点

 

在使用断点是有以下两个技巧是十分有用的:

Hit Count: 是指定断点处的代码段运行多少次,最典型的就是循环,如果要让一个循环执行10次就线程挂起,则指定Hit Count值为10,那么当前的循环执行到第九次的时候就会挂掉。

Conditional:顾名思义,就是条件判断,例如我们需要循环变量i==10时,线程挂起,则条件设定为i==10,选择Suspend when “true”。

 

上一篇:vue filters过滤器的使用


下一篇:NET 基于ValidationContext和反射,调用过滤器校验参数