国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版)

這篇具有很好參考價(jià)值的文章主要介紹了小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言

本篇文章主要介紹如何進(jìn)行斷點(diǎn)調(diào)試

1、開始調(diào)試

開始調(diào)試主要分為兩步,第一為設(shè)置斷點(diǎn),第二才進(jìn)行調(diào)式操作。

1、設(shè)置斷點(diǎn)

設(shè)置斷點(diǎn)的方法基本上大多數(shù)的 IDE 都一致,當(dāng)我們?cè)诖a行上的數(shù)字旁鼠標(biāo)左鍵點(diǎn)擊一下,便設(shè)置斷點(diǎn)成功(可設(shè)置多個(gè)斷點(diǎn))。斷點(diǎn)還可以進(jìn)行其余設(shè)置
小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

2、Debug調(diào)試

啟動(dòng)調(diào)式主要有以下三種方法:

  1. 工具欄點(diǎn)擊小甲蟲樣式debug 按鈕
  2. 鼠標(biāo)右鍵 菜單下的 debug
  3. 快捷鍵:Alt+Shift+D (可自行更換)

方式一:

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

方式二:
小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

2、調(diào)試界面解釋

點(diǎn)擊了調(diào)試按鈕之后,我們 IDEA 的底部會(huì)變成以下形式。既然要開始調(diào)試,我們總得先對(duì)調(diào)試界面有一個(gè)初步的認(rèn)識(shí)不是,因此在下面我對(duì)常用的部分進(jìn)行解釋

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

1、調(diào)試器
在此界面可查看關(guān)于調(diào)式獲得到的信息,如變量、方法返回值等

2、控制臺(tái)
點(diǎn)擊控制臺(tái)后可以跟我們正常運(yùn)行代碼一樣,在控制臺(tái)中輸入數(shù)據(jù)和查看輸出情況

3、重啟

重新調(diào)試

4、停止

停止當(dāng)前調(diào)試

5、Resume Program

快捷鍵為 F8,跳到一下個(gè)斷點(diǎn)處

6、Step Over
快捷鍵為 F6步過(guò),一行一行地往下走,如果這一行上有方法,直接執(zhí)行完該方法的內(nèi)容,不會(huì)進(jìn)入方法里面。

7、Step Into
快捷鍵為 F5。步入,如果當(dāng)前行有方法,可以進(jìn)入方法內(nèi)部,一般用于進(jìn)入自定義方法內(nèi),不會(huì)進(jìn)入官方類庫(kù)的方法。

8、Step Out
快捷鍵為 F7。步出,從步入的方法內(nèi)退出到方法調(diào)用處,此時(shí)方法已執(zhí)行完畢,只是還沒(méi)有完成賦值。

9、Force Step Into
快捷鍵為 Alt + Shift + F7。強(qiáng)制步入,能進(jìn)入任何方法,查看底層源碼的時(shí)候可以用這個(gè)進(jìn)入官方類庫(kù)的方法。

10、Run to Cursor
Ctrl+R。運(yùn)行到光標(biāo)處,你可以將光標(biāo)定位到你需要查看的那一行,然后使用這個(gè)功能,代碼會(huì)運(yùn)行至光標(biāo)行,而不需要打斷點(diǎn)。

11、Show Execution Point
快捷鍵為 Alt + F10 。如果你的光標(biāo)在其它行或其它頁(yè)面,點(diǎn)擊這個(gè)按鈕可跳轉(zhuǎn)到當(dāng)前Debug代碼執(zhí)行的行。

12、Variable窗口
如圖中的紅框,這里顯示當(dāng)前方法里的所有變量。

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

簡(jiǎn)記

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

3、步過(guò)、步入和強(qiáng)制步入?yún)^(qū)別

這三個(gè)按鈕的功能各有千秋,都具有進(jìn)行到下一步的功能。當(dāng)我們寫的 bug 不同時(shí),我們就得用到不同的按鈕,下面我用表格列出三者的不同

是否可跳轉(zhuǎn) 是否可進(jìn)入自定義方法 是否可進(jìn)入類庫(kù)方法
步過(guò) ? ? ?
步入 ? ? ?
強(qiáng)制步入 ? ? ?

4、調(diào)試案例

4.1、創(chuàng)建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、創(chuàng)建UserTest調(diào)試類

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

/*
* 1、靜態(tài)方法不能直接調(diào)用非靜態(tài)方法。
* 2、靜態(tài)方法和變量可以在類被加載時(shí)就被訪問(wèn),而非靜態(tài)方法和變量需要在該對(duì)象創(chuàng)建后才能被訪問(wèn)。
* 3、如果想在靜態(tài)方法中訪問(wèn)非靜態(tài)方法或者變量,則需要先創(chuàng)建一個(gè)對(duì)象,然后在靜態(tài)方法里面通過(guò)對(duì)象去訪問(wèn)非靜態(tài)方法。
* */

public class UserTest {
	//	非靜態(tài)方法,獲取User列表
	public List<User> getUserList(){
		User user1 = new User(1,"張三");
		User user2 = new User(2,"李四");
		User user3 = new User(3,"王五");
		//	注意List是接口,接口不能直接實(shí)例化,需要通過(guò)它的實(shí)現(xiàn)類
		List<User> users= new ArrayList<>();
		users.add(user1);
		users.add(user2);
		users.add(user3);

		return users;
	}

	public void syTest(){
		System.out.println("斷點(diǎn)回退前");
		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);
			}
		}
	}

	// 主程序入口,靜態(tài)方法
	public static void main(String[] args) {
		int[] array={1,2,3,4,5};
		UserTest userTest = new UserTest();
		// 在靜態(tài)方法里面調(diào)用非靜態(tài)方法,需要通過(guò)對(duì)象去調(diào)用。
		userTest.allTest(array);
		List<User> users= userTest.getUserList();

		// 帶條件的斷點(diǎn)
		for (User user : users) {
			System.out.println(user.getId());
		}

		// 斷點(diǎn)回退
		userTest.syTest();

		// 執(zhí)行中斷 force return
		userTest.allTest(array);

	}
}

4.3、具體調(diào)試

1、常用調(diào)試

在userTest.allTest(array) 打一個(gè)斷點(diǎn),點(diǎn)擊Debug

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

2、帶條件的斷點(diǎn)

在System.out.println(user.getId());打一個(gè)斷點(diǎn),鼠標(biāo)右鍵斷點(diǎn),編寫調(diào)試條件

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

3、斷點(diǎn)回退(只能用在方法里面)

在userTest.syTest() ,打一個(gè)斷點(diǎn),Step Into進(jìn)入方法后,點(diǎn)擊Step Over,我們可以看到,左下角框有Reset Frame(斷點(diǎn)回退),點(diǎn)一下它,就回到之前執(zhí)行斷點(diǎn)之前的位置,再次重復(fù)該操作,查看控制臺(tái)輸出內(nèi)容。
小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug

4、執(zhí)行中斷(Force Return)

在userTest.allTest(array),打一個(gè)斷點(diǎn),Step Into進(jìn)入方法后,按Step Over,會(huì)跟著內(nèi)容逐個(gè)輸出1,2,3,4,5。假設(shè)在開發(fā)環(huán)境中,輸出3之后就到了數(shù)據(jù)庫(kù)的更新操作,但我們并不想去更新數(shù)據(jù)庫(kù)的內(nèi)容,即到輸出3的時(shí)候就終止執(zhí)行。即來(lái)到3的時(shí)候,在Threads & Variable 右鍵,選擇Force Return,就不會(huì)繼續(xù)執(zhí)行下去了。

小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版),實(shí)用性小技巧,intellij-idea,java,ide,bug文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-734262.html

到了這里,關(guān)于小白如何進(jìn)行代碼調(diào)試Debug(IDEA 2023版)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【ETL工具】本地環(huán)境IDEA遠(yuǎn)程DEBUG調(diào)試Flume代碼

    【ETL工具】本地環(huán)境IDEA遠(yuǎn)程DEBUG調(diào)試Flume代碼

    ???????????????? 感謝點(diǎn)贊和關(guān)注 ,每天進(jìn)步一點(diǎn)點(diǎn)!加油! ???????????????? 目錄 ?? 個(gè)人主頁(yè)——??個(gè)人主頁(yè) ????? 一、問(wèn)題說(shuō)明 二、操作步驟 2.1 idea創(chuàng)建遠(yuǎn)程調(diào)試 Flume 自定義 HDFS-Sink,遠(yuǎn)程服務(wù)器進(jìn)行部署flume打包好后的代碼,本地監(jiān)控遠(yuǎn)程flume程序

    2024年02月08日
    瀏覽(27)
  • IDEA遠(yuǎn)程DeBug調(diào)試

    IDEA遠(yuǎn)程DeBug調(diào)試

    1. 介紹 當(dāng)我們?cè)陂_發(fā)過(guò)程中遇到一些復(fù)雜的問(wèn)題或需要對(duì)代碼進(jìn)行調(diào)試時(shí),遠(yuǎn)程調(diào)試是一種非常有用的工具。使用 IntelliJ IDEA 進(jìn)行遠(yuǎn)程調(diào)試可以讓你在遠(yuǎn)程服務(wù)器上的應(yīng)用程序中設(shè)置斷點(diǎn)、查看變量和執(zhí)行調(diào)試操作。 遠(yuǎn)程調(diào)試的好處如下: 提供更方便的調(diào)試環(huán)境:通過(guò)遠(yuǎn)程

    2024年02月11日
    瀏覽(24)
  • Idea斷點(diǎn)調(diào)試(debug)詳解

    Idea斷點(diǎn)調(diào)試(debug)詳解

    打斷點(diǎn): 鼠標(biāo)左鍵點(diǎn)擊這里就會(huì)出現(xiàn)一個(gè)紅點(diǎn)標(biāo)志 (有各種形狀,后續(xù)解釋),就打上了一個(gè)斷點(diǎn)。 啟動(dòng): 對(duì)于已經(jīng)運(yùn)行過(guò)的程序,直接點(diǎn)擊,小蟲子就能啟動(dòng) 對(duì)于沒(méi)有運(yùn)行過(guò)的程序,找到程序入口(main方法)前面的三角形 ,鼠標(biāo)右鍵啟動(dòng) 啟動(dòng)后,當(dāng)我們的程序執(zhí)行到

    2024年02月08日
    瀏覽(24)
  • IDEA debug 斷點(diǎn)調(diào)試技巧

    IDEA debug 斷點(diǎn)調(diào)試技巧

    1、首先看下IDEA中Debug模式下的界面: ① 以Debug模式啟動(dòng)服務(wù),左邊的一個(gè)按鈕則是以Run模式啟動(dòng)。在開發(fā)中,我一般會(huì)直接啟動(dòng)Debug模式,方便隨時(shí)調(diào)試代碼。 ② 斷點(diǎn):在左邊行號(hào)欄單擊左鍵,或者快捷鍵Ctrl+F8 打上/取消斷點(diǎn),斷點(diǎn)行的顏色可自己去設(shè)置。 ③ Debug窗口:訪

    2024年02月15日
    瀏覽(30)
  • Idea實(shí)現(xiàn)遠(yuǎn)程debug調(diào)試
  • 使用 IDEA 遠(yuǎn)程 Debug 調(diào)試,太實(shí)用了!

    使用 IDEA 遠(yuǎn)程 Debug 調(diào)試,太實(shí)用了!

    有時(shí)候我們需要進(jìn)行遠(yuǎn)程的debug,本文研究如何進(jìn)行遠(yuǎn)程debug,以及使用 IDEA 遠(yuǎn)程debug的過(guò)程中的細(xì)節(jié)??赐昕梢越鉀Q你的一些疑惑。 遠(yuǎn)程debug的服務(wù),以springboot微服務(wù)為例(springcloud的應(yīng)該差不多,我沒(méi)研究過(guò))。首先,啟動(dòng)springboot需要加上特定的參數(shù)。 推薦一個(gè)開源免費(fèi)的

    2024年02月12日
    瀏覽(24)
  • 【五、深入淺出GDB調(diào)試器】如何修復(fù)程序bug或優(yōu)化代碼:gdb調(diào)試器的來(lái)龍去脈與debug全方位實(shí)戰(zhàn)詳解

    【五、深入淺出GDB調(diào)試器】如何修復(fù)程序bug或優(yōu)化代碼:gdb調(diào)試器的來(lái)龍去脈與debug全方位實(shí)戰(zhàn)詳解

    GDB全稱GNU symbolic debugger,它是誕生于GNU開源組織的(同時(shí)誕生的還有 GCC、Emacs 等)UNIX及UNIX-like下的調(diào)試工具,是Linux下最常用的程序調(diào)試器,GDB 支持調(diào)試多種編程語(yǔ)言編寫的程序,包括C、C++、Go、Objective-C、OpenCL、Ada 等。但是在實(shí)際應(yīng)用中,GDB 更常用來(lái)調(diào)試C和C++程序。雖然

    2023年04月17日
    瀏覽(21)
  • jvm開啟遠(yuǎn)程調(diào)試功能;idea遠(yuǎn)程debug

    jvm開啟遠(yuǎn)程調(diào)試功能;idea遠(yuǎn)程debug

    有時(shí)候一些問(wèn)題本地調(diào)試無(wú)法復(fù)現(xiàn),這個(gè)時(shí)候可以開啟 jvm 的遠(yuǎn)程調(diào)試功能 jdk8 jdk11/17 修改 tomcat 的 bin 下的 catalina.sh 文件 把 jpda_address 對(duì)應(yīng)的 localhost:8000 改為 8000 ,意味著允許任何人訪問(wèn)。 填上對(duì)應(yīng)的 ip 和端口即可,當(dāng)然要確保被連接的服務(wù)的代碼和本地是一致的,不然代

    2024年02月11日
    瀏覽(22)
  • IDEA遠(yuǎn)程Debug調(diào)試工具(Remote)的使用

    IDEA遠(yuǎn)程Debug調(diào)試工具(Remote)的使用

    我們?cè)陂_發(fā)的過(guò)程中,經(jīng)常會(huì)遇到這樣的情況:代碼在本地測(cè)試得好好的,但部署上線后測(cè)試結(jié)果就不一樣了,這時(shí)就需要去服務(wù)器上查看日志進(jìn)行分析從而定位問(wèn)題,但這樣還是會(huì)比較麻煩,如果能夠Debug調(diào)試,那豈不是美滋滋。 最近了解到IDEA里面其實(shí)有遠(yuǎn)程Debug調(diào)試工具

    2024年02月11日
    瀏覽(25)
  • IDEA Go語(yǔ)言開發(fā)環(huán)境無(wú)法debug調(diào)試

    使用idea 搭建go開發(fā)環(huán)境后如果debug調(diào)試可能會(huì)遇到錯(cuò)誤: could not launch process: decoding dwarf section info at offset 0x0: too short。 有些回答go get -u github.com/derekparker/delve/cmd/dlv 。如果使用go mod方式開發(fā)的話這種方式是行不通的,最直接的方法是把dlv項(xiàng)目下載下來(lái)自己編譯生成dlv.exe。 進(jìn)

    2024年02月14日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包