暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Debug 断点调试(Eclipse)

萝卜分享铺 2020-07-21
710

1、什么是 Debug

编译出错不运行,但是 程序的运行结果
你预先的结果
不一样


2、什么是 断点调试

每行代码 都跟踪运行,运行过程中,看到 变量的变化
方法的调用


3、Debug 常用操作

断点:程序到达断点后,就不再运行了,等着指挥它运行

F6:运行 本行代码

F5:进入 方法体

即时窗口:帮助你单独运行一些程序,打开方式是 Window
 --->  Show View
 --->  Expressions


4、举例分析


4.1、创建 Debug.java 文件


该文件是 遍历数组 的典型案例

package xyz.wenkang;

public class Debug {

public static void main(String[] args) {

int[] arr = { 1 , 2 , 3 , 4 , 5 } ;

System.out.print( "[" );

for (int i = 0; i < arr.length; i++) {
if ( i == arr.length - 1 ) {
System.out.print( arr[i] );
} else {
System.out.print( arr[i] + "," );
}
}

System.out.print( "]" );
}

}

Run As Java Application
运行结果:

4.2、进行 断点调试


4.2.1、打开 即时窗口

打开方式是 Window
 --->  Show View
 --->  Expressions


4.2.2、打开 Debug 模式


  1. 打开 Skip All Breakpoints
    ,防止 后面打断点时出现 带斜杠的断点

  • Skip All Breakpoints

  • 带斜杠的断点

  • 正常断点(不带斜杠的断点)

  • 将代码以 Debug As Java Application
    运行

  • 出现如下界面:

    理解几个 Debug模式
    的 重要概念:

    1. Skip all breakpoint
      该图标当前状态是指开启所有断点:只要程序是debug
      模式,且程序中存在断点,则程序运行过程中会经过每个断点处。如果对程序中某些代码存在问题,则可在该行代码打上断点


    2. resume
      如图中的状态代表程序处于等待中。如果直接点击,程序将继续运行直到下一个断点为止或程序结束,快捷键F8


    3. Step into
      如果当前程序存在调用的情况,则会进入被调用的内容。如果对调用的方法不明白,想看被调用的方法内部是如何运行的可点击该图标。快捷键F5


    4. Step over
      如果点击程序只会在当前方法中按顺序执行。该过程是开发过程中用得最多也是最能快速发现问题的过程。快捷键F6


    5. Debug
      :这是一种 debug
      视图 。一般进入 debug模式
      都会开启该视图


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

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


    4.2.3、进行 Debug 逐行调试

    例如,我在 第11行 设置一个断点,出现以下变化

    首先,设置断点的后面代码块不会运行(包括设置断点行的代码)

    然后,变量区域会出现运行代码块中 变量的变化,控制台也会输出运行代码块的内容

    5、Debug 的意义

    1. 没有任何程序员能够一气呵成的写出没有任何 Bug 的代码,所以很多程序员有相当一部分时间是花费在 Debug 上的,程序调试是每个程序员必须面对的工作。

    2. 如何使用 Eclipse 进行有效的、尤其是高效地调试代码是一个值得学习的技巧!


    文章转载自萝卜分享铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论