【IDEA】DeBug(图文并茂)

news/2024/10/23 7:15:17/

文章目录

        • 01_Debug简介和意义
        • 02_IDEA中的Debug步骤
        • 03_跳转到当前代码执行的行
        • 04_步过调试的使用
        • 05_步入调试的使用
        • 06_强制步入调试的使用
        • 07_步出调试的使用
        • 08_回退断点调试的使用
        • 09_运行到光标处
        • 10_计算表达式
        • 11_条件断点
        • 12_多线程调试

IDAEA(Interactive Data Analysis Environment for Apache)是一个基于 Web 的交互式数据分析环境,其主要目的是为了简化大数据处理和分析的过程。在使用 IDAEA 进行开发或者调试时,可以带来以下好处:

  • 平台独立:IDAEA 构建在 Web 上,可以通过浏览器访问,因此不依赖于任何特定操作系统或软件平台,可以在不同的计算机上进行开发和调试。

  • 易于使用:IDAEA 提供了丰富的数据处理和分析工具,开发人员可以通过简单的代码调用功能模块来完成复杂的计算和数据分析任务。它还支持多种语言,包括 Python、Scala 和 R,方便不同编程语言领域的开发人员使用。

  • 方便调试:IDAEA 提供了自动代码检查、代码高亮以及可视化等工具,方便开发人员进行调试和测试。同时,它也支持 Jupyter Notebook 交互式编程模式,使得开发人员可以实时展示代码执行的结果或调试信息。

  • 提高效率:使用 IDAEA 可以快速地构建可扩展的大数据处理和分析应用程序。通过利用其内建的可视化和分析功能,再加上与其他开源技术集成的能力,可以提高开发人员的效率,并更容易地完成数据集成、数据挖掘以及机器学习等任务。

01_Debug简介和意义

  • 什么是程序DeBug?
    • Debug,是程序开发人员必会的一项调试程序的技能。
    • 企业中程序开发和程序调试的比例为1:1.5,可以说如果你不会调试程序,你就没有办法从事编程工作。
  • Debug能帮助我们做什么?
    1. 追踪代码的运行流程。
    2. 程序运行异常定位。
    3. 线上问题追踪。
  • Debug对于程序学习者的意义
    1. 通过调试能够更好的查看程序的执行流程。
    2. 复杂的程序逻辑,通过老师的口述讲解,很难理解清楚,这个时候借助调试能够很好的帮助同学们理解程序。
    3. 定位问题,提高自我解决问题的能力。

02_IDEA中的Debug步骤

  • 设置断点(F9)
  • 调试程序(8个按钮)

在这里插入图片描述

各个按钮的说明:
在这里插入图片描述

  • 观察变量
    • 查看变量有三种方式:
      • 程序区查看变量
      • Debugger的Variables中查看变量
      • 鼠标悬停到变量名上会弹出当前变量的值

在这里插入图片描述

  • 查看输出

03_跳转到当前代码执行的行

  • 跳转到当前代码执行的行(Alt + F10) 在这里插入图片描述

  • 作用

    • 使程序窗口切换到当前正在运行的程序处。

04_步过调试的使用

  • 步过调试

    • 步过调试按钮(F8)在这里插入图片描述
  • 作用

    • 步过,一行一行地往下走,如果这一行上有方法不会进入方法。
    • 常用于调试过程中不想进入调用的方法体的情况。

05_步入调试的使用

  • 步入调试

    • 步过调试按钮(F7)在这里插入图片描述
  • 作用

    • 步入,一行一行地往下走,如果这一行上有方法,则进入方法内部。
    • 一般用于进入自定义方法内,不会进入官方类库的方法。

06_强制步入调试的使用

  • 强制步入调试

    • 强制步入调试按钮(Alt + Shift + F7)在这里插入图片描述
  • 作用

    • 进入官方类库方法
    • 帮助我们学习和查看JDK源码

07_步出调试的使用

  • 步出调试

    • 步出调试按钮(Shift + F8)在这里插入图片描述
  • 作用

    • 从方法内退出到方法调用处。
    • 调试的时候,有时候会跳入到自己不想查看的方法体,这个时候使用步出。

08_回退断点调试的使用

  • 回退断点

    • 回退断点按钮 在这里插入图片描述
  • 作用

    • 回退到当前方法的调用处。
    • 当想重新查看该方法体的执行过程时,不用重新启动Debug,可以使用回退断点方式。

09_运行到光标处

  • 运行到光标处
    • 运行光标处按钮 (F9)在这里插入图片描述

    • 作用

      • 使程序运行到光标处,而无需设置断点。

10_计算表达式

  • 计算表达式

    • 计算表达式按钮(Alt + F8)在这里插入图片描述

      在这里插入图片描述
  • 作用

    • 设置变量,在计算表达式的框里,可以改变变量的值,这样有时候就能很方便我们去调试各种值的情况了。

11_条件断点

  • 条件断点

    • 右键单击断点处,可以设置进入断点的条件
    • 在这里插入图片描述
  • 作用

    • 通过设置断点条件,在满足条件时,才停在断点处,否则直接运行。

12_多线程调试

  • 步骤
    • 多线程调试,需要调整断点挂起级别为Thread
      在这里插入图片描述

    • Frame中选择线程进行调试


http://www.ppmy.cn/news/75243.html

相关文章

人人可用的开源数据可视化分析工具

大家好,我是互联网架构师! 在互联网数据大爆炸的这几年,各类数据处理、数据可视化的需求使得 GitHub 上诞生了一大批高质量的 BI 工具。 借助这些 BI 工具,我们能够大幅提升数据分析效率、生成更高质量的项目报告,让用…

实时频谱-1.1基本概念

RF信号 RF(射频)是Radio Frequency的缩写,表示可以辐射到空间的电磁频率,频率范围从300KHz~30GHz之间。 中频 IF(intermediate frequency),用来在中频衡量AM或FM调谐器抑制外来干扰的能力,数…

短睡眠 堀大辅 超短眠 人生更丰富

堀大辅是位每天只睡半小时的日本狠人,更多信息自行百度。以下内容,个人收集总结,仅供参考。 堀大辅大胆假设「只要能够减少睡眠的时间,我就能过得更充实」,便与朋友付诸行动,通过纪录观察每天的睡眠时数&a…

网络安全的学习路线

在众多高大上的学习路线指导中,尝试做一股清流,把要讲清楚的都讲清楚,该学些什么,学到哪个程度进入到下一阶段的学习这些才是最重要的。 在学习之前首先要做好学习的系统规划: 1.目前市场需求主流的岗位里&#xff0…

虚幻引擎4利用粒子系统实现物体轨迹描绘

虚幻引擎4利用粒子系统实现物体轨迹描绘 目录 虚幻引擎4利用粒子系统实现物体轨迹描绘前言粒子系统利用粒子系统实现物体轨迹描绘创建粒子系统将粒子系统的产生位置绑定到运动物体上 小结 前言 由于在物体运动时,想要观察其总的运动轨迹,以便对其控制做…

python入门(7)函数系列 2

1. 作用域 在Python中,作用域是指变量在程序中可访问的范围。 1.1作用域种类 Python中有以下几种作用域: (1)全局作用域(Global Scope):全局作用域是在整个程序中都可访问的作用域。在全局作…

Unity Metaverse(七)、基于环信IM SDK实现的好友系统、私聊、群聊

文章目录 🎈 简介🎈 用户管理🎈 好友管理🎈 聊天管理🔸 发送与接收消息🔸 消息处理消息项的对象池管理 🎈 简介 在之前的文章中已经介绍了如何接入环信IM Unity SDK,及基于该SDK实现…

# IO模型

IO模型 非阻塞IO 当程序读取硬件数据时,不管硬件数据是否准备好,read()函数不会阻塞,会继续向下执行 程序会不停监测IO事件是否产生,CPU消耗率高 防止进程阻塞在IO函数上,如果要获得有效数据,需要轮循 …