最基本的操作是:
1, 首先在一个java文件中设断点,然后运行,当程序走到断点处就会转到
debug视图下,
2, F5键与F6键均为单步调试,F5是step into,也就是进入本行代码中执行,F6是step over,
也就是执行本行代码,跳到下一行,
3,F7是跳出函数 step return
4,F8是执行到最后。
=====================================
1.Step Into (also F5) 跳入
2.Step Over (also F6) 跳过
3.Step Return (also F7) 执行完当前method,然后return跳出此method
4.step Filter 逐步过滤 一直执行直到遇到未经过滤的位置或断点(设置Filter:window-preferences-java-Debug-step Filtering)
5.resume 重新开始执行debug,一直运行直到遇到
breakpoint
6.hit count 设置执行次数 适合程序中的for
循环(设置 breakpoint view-右键hit count)
7.inspect 检查 运算。执行一个
表达式显示执行值
8.watch 实时地监视变量的变化
9.我们常说的断点(breakpoints)是指line breakpoints,除了line breakpoints,还有其他的断点类型:field(watchpoint)breakpoint,method breakpoint,exception breakpoint.
10.field breakpoint 也叫watchpoint(监视点) 当成员变量被读取或修改时暂挂
11.添加method breakpoint 进入/离开此方法时暂挂(Run-method breakpoint)
12.添加Exception breakpoint 捕抓到Execption时暂挂(待续...)
断点属性:
1.hit count 执行多少次数后暂挂 用于循环
2.enable condition 遇到符合你输入条件(为ture\改变时)就暂挂
3.suspend
thread 多
线程时暂挂此线程
4.suspend VM 暂挂虚拟机
13.variables 视图里的变量可以改变变量值,在variables 视图选择变量点击右键--change value.一次来进行快速调试。
14.debug 过程中修改了某些code后--〉save&build-->resume-->重新暂挂于断点
===========================
例如你有如下程序:
public static void main(String args[]) {
MyDate aa = new MyDate();
aa.addDays(day); =============》(1)
System.out.println("eeeeeeeeeeeeeee");=============》(2)
}
public String addDays(int more_days) {
System.out.println("1"); =============》(3)
String result = ""; =============》(4)
System.out.println("2"); =============》(5)
return result;
}
你在(1)处加断点,运行到此处时如果Step Into (also F5)为跳入,则接着执行到(3)。再执行Step Over (also F6)执行本行,则执行到(4)。最后执行Step Return (also F7),则跳出addDays方法,跳到(2)