• 【IDEA】(4)---很好用的DEBUG功能


    IDEA—DEBUG功能

    一、常用快捷键

    快捷键并不是完全一样的,我这边是MAC安装的IDEA, 这边最主要还是知道DEBUG时常用的功能。

    1、快捷键

    F7  #进入下一步,如果当前行是一个方法,则进入当前方法体内
    F8  #进入下一步,如果当前行是一个方法,则不进入当前方法体内
    F9  #跳到下一个断点,如果没有则直接运行结束
    Alt + F8         #表达式求值
    Alt + F9         #代码会运行至光标行,而不需要打断点
    Shift + F8       #跳出进入的方法体,回到上级代码处
    Ctrl+Shift+F9    #DEBUG模式运行
    Ctrl+F5          #重新运行
    Shift+Command+F8 #查看所有断点,为断点添加条件等
    

    2、图形化界面解释

    第一组

    (Alt + F10):如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前执行的断点。

    (F8):步过,一行一行地往下走,如果这一行上有方法不会进入方法。

    (F7):步入,如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法。

    (Alt + Shift + F7):强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法。

    (Shift + F8):步出,从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值。

    Drop Frame (默认无快捷键):回退断点,后面章节详细说明。

    (Alt + F9):运行到光标处,你可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点。

    Evaluate Expression (Alt + F8):计算表达式,后面章节详细说明。

    第二组


    Rerun 'xxxx':重新运行程序,会关闭服务后重新启动程序。

    (Ctrl + F5):更新程序,一般在你的代码有改动后可执行这个功能。

    (F9):跳到下一个断点,如果没有则直接运行结束。

    Pause Program:暂停程序,启用Debug。目前没发现具体用法。

    (Ctrl + F2):连续按两下,关闭程序。有时候你会发现关闭服务再启动时,报端口被占用,这是因为没完全关闭服务的原因,你就需要查杀所有JVM进程了。

    (Ctrl + Shift + F8):查看所有断点。

    Mute Breakpoints:哑的断点,选择这个后,所有断点变为灰色,断点失效,按F9则可以直接运行完程序。

    3、MAC的功能键实效

    如果你是mac系统你的功能键F1~F12,对于IDEA可能是实效的,这里需要相关设置。


    二、计算表达式

    可以使用这个操作在调试过程中计算某个表达式的值,比如是否为空,获取其它值的计算,同时它还可以修改属性值。

    1、计算表达式

            int age = 10;
            String name = "小小";
            //这里有个判断条件,我想知道age > 5 的计算结果
            if (age > 5 && name == null) {
                System.out.println("age = " + age);
            }
    

    第一种直接选中age>5它会直接告诉你计算结果。

    第二种通过Alt+F9输入计算表达式,也会计算结果。

    2、修改属性字段

    下面age为10,那么age == 18 就为false

    这时我通过Alt+F9修改属性

    发现这个属性值已经修改成我们自定义的18了。

    重要 顺便说下如果我们需要查看一些重要的属性值的变化,那么我们可以将variables中的属性添加到Watches进行前后观察,这样更加直观。比如下面age。


    三、断点条件设置

    这个一般循环内比较实用,因为我们在循环体内设置断点,如果没有条件判断那么我们需要一个一个执行。条件判断就带来很大便利。

    在该断点设置条件判断,设置好后该断点上会有个❓


    四、异常断点

    好多时候debug的时候报异常了,如果异常恰好在for里,这个时候你也不能用条件判断打断点,因为不知道用什么条件的打这个断点,这个时候异常断点就很有用了。

    比如下面,并没有打上任何断点

    设置异常断点 快捷键Shift+Command+F8 点击+号,设置相关异常

    运行结果



    只要自己变优秀了,其他的事情才会跟着好起来(少将19)
    
  • 相关阅读:
    Vs2010 编辑器自动提示crash的解决办法
    史丹佛毕业25年 我最有钱的同学是...zz
    Workerman3 创建wss服务 利用apache代理wss
    vue面试装X知识汇总
    接:this is incompatible with sql_mode=only_full_group_by
    vue2 nuxtjs 使用与安装
    linux 升级安装最新版本的composer2.0
    Ubuntu20.04LTS 添加环境变量
    this is incompatible with sql_mode=only_full_group_by
    CC2420与IEEE802.15.4关系
  • 原文地址:https://www.cnblogs.com/qdhxhz/p/10946988.html
Copyright © 2020-2023  润新知