小白如何进行代码调试Debug(IDEA 2023版)

这篇具有很好参考价值的文章主要介绍了小白如何进行代码调试Debug(IDEA 2023版)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

本篇文章主要介绍如何进行断点调试

1、开始调试

开始调试主要分为两步,第一为设置断点,第二才进行调式操作。

1、设置断点

设置断点的方法基本上大多数的 IDE 都一致,当我们在代码行上的数字旁鼠标左键点击一下,便设置断点成功(可设置多个断点)。断点还可以进行其余设置
小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

2、Debug调试

启动调式主要有以下三种方法:

  1. 工具栏点击小甲虫样式debug 按钮
  2. 鼠标右键 菜单下的 debug
  3. 快捷键:Alt+Shift+D (可自行更换)

方式一:

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

方式二:
小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

2、调试界面解释

点击了调试按钮之后,我们 IDEA 的底部会变成以下形式。既然要开始调试,我们总得先对调试界面有一个初步的认识不是,因此在下面我对常用的部分进行解释

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

1、调试器
在此界面可查看关于调式获得到的信息,如变量、方法返回值等

2、控制台
点击控制台后可以跟我们正常运行代码一样,在控制台中输入数据和查看输出情况

3、重启

重新调试

4、停止

停止当前调试

5、Resume Program

快捷键为 F8,跳到一下个断点处

6、Step Over
快捷键为 F6步过,一行一行地往下走,如果这一行上有方法,直接执行完该方法的内容,不会进入方法里面。

7、Step Into
快捷键为 F5步入,如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法。

8、Step Out
快捷键为 F7步出,从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值。

9、Force Step Into
快捷键为 Alt + Shift + F7强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法。

10、Run to Cursor
Ctrl+R运行到光标处,你可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点。

11、Show Execution Point
快捷键为 Alt + F10 。如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前Debug代码执行的行。

12、Variable窗口
如图中的红框,这里显示当前方法里的所有变量

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

简记

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

3、步过、步入和强制步入区别

这三个按钮的功能各有千秋,都具有进行到下一步的功能。当我们写的 bug 不同时,我们就得用到不同的按钮,下面我用表格列出三者的不同

是否可跳转 是否可进入自定义方法 是否可进入类库方法
步过
步入
强制步入

4、调试案例

4.1、创建User类

public class User {
	private int id;
	private String name;

	public User() {
	}

	public User(int id, String name) {
		this.id = id;
		this.name = name;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
}

4.2、创建UserTest调试类

import java.util.ArrayList;
import java.util.List;

/*
* 1、静态方法不能直接调用非静态方法。
* 2、静态方法和变量可以在类被加载时就被访问,而非静态方法和变量需要在该对象创建后才能被访问。
* 3、如果想在静态方法中访问非静态方法或者变量,则需要先创建一个对象,然后在静态方法里面通过对象去访问非静态方法。
* */

public class UserTest {
	//	非静态方法,获取User列表
	public List<User> getUserList(){
		User user1 = new User(1,"张三");
		User user2 = new User(2,"李四");
		User user3 = new User(3,"王五");
		//	注意List是接口,接口不能直接实例化,需要通过它的实现类
		List<User> users= new ArrayList<>();
		users.add(user1);
		users.add(user2);
		users.add(user3);

		return users;
	}

	public void syTest(){
		System.out.println("断点回退前");
		System.out.println("回退后");
	}


	public void allTest(int[] array){
		for (int i : array) {
			if (i==1){
				System.out.println(1);
			}else if (i==2){
				System.out.println(2);
			}else if (i==3){
				System.out.println(3);
			}else if (i==4){
				System.out.println(4);
			}
			else {
				System.out.println(5);
			}
		}
	}

	// 主程序入口,静态方法
	public static void main(String[] args) {
		int[] array={1,2,3,4,5};
		UserTest userTest = new UserTest();
		// 在静态方法里面调用非静态方法,需要通过对象去调用。
		userTest.allTest(array);
		List<User> users= userTest.getUserList();

		// 带条件的断点
		for (User user : users) {
			System.out.println(user.getId());
		}

		// 断点回退
		userTest.syTest();

		// 执行中断 force return
		userTest.allTest(array);

	}
}

4.3、具体调试

1、常用调试

在userTest.allTest(array) 打一个断点,点击Debug

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

2、带条件的断点

在System.out.println(user.getId());打一个断点,鼠标右键断点,编写调试条件

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

3、断点回退(只能用在方法里面)

在userTest.syTest() ,打一个断点,Step Into进入方法后,点击Step Over,我们可以看到,左下角框有Reset Frame(断点回退),点一下它,就回到之前执行断点之前的位置,再次重复该操作,查看控制台输出内容。
小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug

4、执行中断(Force Return)

在userTest.allTest(array),打一个断点,Step Into进入方法后,按Step Over,会跟着内容逐个输出1,2,3,4,5。假设在开发环境中,输出3之后就到了数据库的更新操作,但我们并不想去更新数据库的内容,即到输出3的时候就终止执行。即来到3的时候,在Threads & Variable 右键,选择Force Return,就不会继续执行下去了。

小白如何进行代码调试Debug(IDEA 2023版),实用性小技巧,intellij-idea,java,ide,bug文章来源地址https://www.toymoban.com/news/detail-734262.html

到了这里,关于小白如何进行代码调试Debug(IDEA 2023版)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ETL工具】本地环境IDEA远程DEBUG调试Flume代码

    🪁🍁🪁🍁🪁🍁🪁🍁 感谢点赞和关注 ,每天进步一点点!加油! 🪁🍁🪁🍁🪁🍁🪁🍁 目录 🦄 个人主页——🎐个人主页 🎐✨🍁 一、问题说明 二、操作步骤 2.1 idea创建远程调试 Flume 自定义 HDFS-Sink,远程服务器进行部署flume打包好后的代码,本地监控远程flume程序

    2024年02月08日
    浏览(42)
  • IDEA远程DeBug调试

    1. 介绍 当我们在开发过程中遇到一些复杂的问题或需要对代码进行调试时,远程调试是一种非常有用的工具。使用 IntelliJ IDEA 进行远程调试可以让你在远程服务器上的应用程序中设置断点、查看变量和执行调试操作。 远程调试的好处如下: 提供更方便的调试环境:通过远程

    2024年02月11日
    浏览(51)
  • Idea实现远程debug调试

    2024年04月26日
    浏览(46)
  • IDEA debug 断点调试技巧

    1、首先看下IDEA中Debug模式下的界面: ① 以Debug模式启动服务,左边的一个按钮则是以Run模式启动。在开发中,我一般会直接启动Debug模式,方便随时调试代码。 ② 断点:在左边行号栏单击左键,或者快捷键Ctrl+F8 打上/取消断点,断点行的颜色可自己去设置。 ③ Debug窗口:访

    2024年02月15日
    浏览(41)
  • Idea断点调试(debug)详解

    打断点: 鼠标左键点击这里就会出现一个红点标志 (有各种形状,后续解释),就打上了一个断点。 启动: 对于已经运行过的程序,直接点击,小虫子就能启动 对于没有运行过的程序,找到程序入口(main方法)前面的三角形 ,鼠标右键启动 启动后,当我们的程序执行到

    2024年02月08日
    浏览(58)
  • 使用 IDEA 远程 Debug 调试,太实用了!

    有时候我们需要进行远程的debug,本文研究如何进行远程debug,以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。 远程debug的服务,以springboot微服务为例(springcloud的应该差不多,我没研究过)。首先,启动springboot需要加上特定的参数。 推荐一个开源免费的

    2024年02月12日
    浏览(44)
  • 【五、深入浅出GDB调试器】如何修复程序bug或优化代码:gdb调试器的来龙去脉与debug全方位实战详解

    GDB全称GNU symbolic debugger,它是诞生于GNU开源组织的(同时诞生的还有 GCC、Emacs 等)UNIX及UNIX-like下的调试工具,是Linux下最常用的程序调试器,GDB 支持调试多种编程语言编写的程序,包括C、C++、Go、Objective-C、OpenCL、Ada 等。但是在实际应用中,GDB 更常用来调试C和C++程序。虽然

    2023年04月17日
    浏览(95)
  • jvm开启远程调试功能;idea远程debug

    有时候一些问题本地调试无法复现,这个时候可以开启 jvm 的远程调试功能 jdk8 jdk11/17 修改 tomcat 的 bin 下的 catalina.sh 文件 把 jpda_address 对应的 localhost:8000 改为 8000 ,意味着允许任何人访问。 填上对应的 ip 和端口即可,当然要确保被连接的服务的代码和本地是一致的,不然代

    2024年02月11日
    浏览(43)
  • IDEA远程Debug调试工具(Remote)的使用

    我们在开发的过程中,经常会遇到这样的情况:代码在本地测试得好好的,但部署上线后测试结果就不一样了,这时就需要去服务器上查看日志进行分析从而定位问题,但这样还是会比较麻烦,如果能够Debug调试,那岂不是美滋滋。 最近了解到IDEA里面其实有远程Debug调试工具

    2024年02月11日
    浏览(43)
  • IDEA Go语言开发环境无法debug调试

    使用idea 搭建go开发环境后如果debug调试可能会遇到错误: could not launch process: decoding dwarf section info at offset 0x0: too short。 有些回答go get -u github.com/derekparker/delve/cmd/dlv 。如果使用go mod方式开发的话这种方式是行不通的,最直接的方法是把dlv项目下载下来自己编译生成dlv.exe。 进

    2024年02月14日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包