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

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

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

1.打斷點(diǎn),并啟動(dòng)

打斷點(diǎn):

鼠標(biāo)左鍵點(diǎn)擊這里就會(huì)出現(xiàn)一個(gè)紅點(diǎn)標(biāo)志 Idea斷點(diǎn)調(diào)試(debug)詳解(有各種形狀,后續(xù)解釋),就打上了一個(gè)斷點(diǎn)。

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

啟動(dòng):

  • 對(duì)于已經(jīng)運(yùn)行過(guò)的程序,直接點(diǎn)擊,小蟲子就能啟動(dòng)
    Idea斷點(diǎn)調(diào)試(debug)詳解
  • 對(duì)于沒有運(yùn)行過(guò)的程序,找到程序入口(main方法)前面的三角形 Idea斷點(diǎn)調(diào)試(debug)詳解 ,鼠標(biāo)右鍵啟動(dòng)

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

啟動(dòng)后,當(dāng)我們的程序執(zhí)行到斷點(diǎn)程序處,就會(huì)出現(xiàn)調(diào)試界面,如下:
Idea斷點(diǎn)調(diào)試(debug)詳解

如果沒有出現(xiàn)調(diào)試界面,那就是說(shuō)明:根本沒有執(zhí)行斷點(diǎn)處的程序。

2.按鈕介紹

1.測(cè)試程序

先寫一個(gè)簡(jiǎn)單的類來(lái)做測(cè)試,如下:

public class TestDemo {

    public static int add(int a, String b) {
        int c = Integer.parseInt(b);
        return a + c;
    }

    public static char sub(int d, int e) {
        char res = (char) Math.abs(d - e);
        return res;
    }

    public static void main(String[] args) {
        String b = "45";
        int a = 13;
        int sum = add(a, b);
        int d = 17;
        int e = 89;
        char f = sub(17, 89);
    }
}

接著,找個(gè)地方打上斷點(diǎn)(確保程序會(huì)執(zhí)行的地方)打上斷點(diǎn):
Idea斷點(diǎn)調(diào)試(debug)詳解

然后開始debug。

2.Step Over

步過(guò):
Idea斷點(diǎn)調(diào)試(debug)詳解

作用:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-475079.html

  • 一行代碼一行代碼地往下執(zhí)行
  • 不會(huì)進(jìn)入到路經(jīng)的方法里面

3.Step Into

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

作用:

  • 進(jìn)入我們自定義的方法
  • 不會(huì)進(jìn)入其他類庫(kù)的方法

4.Force Step Into

強(qiáng)制步入:
Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • 可以進(jìn)入更深層次的方法
  • 自定義類庫(kù)或者其他類庫(kù)的方法都能進(jìn)入

5.Step Out

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

作用:

  • 從對(duì)應(yīng)的方法中出來(lái),返回上一層

6.Drop Frame

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

作用:

  • 當(dāng)進(jìn)入到更深層的方法后才能使用
  • 當(dāng)我們錯(cuò)過(guò)了debug的位置時(shí)使用
  • 這個(gè)按鈕可以讓焦點(diǎn)回到調(diào)用方法之前,然后再次debug一次方法(給你犯錯(cuò)重來(lái)的機(jī)會(huì))
  • 對(duì)于數(shù)據(jù)庫(kù)增刪改操作無(wú)法回退

注意: 此回退僅限于,那個(gè)方法還沒有調(diào)用完,否則是無(wú)法回去的再次debug那個(gè)方法的,只能重新啟動(dòng)debug。

7.Run to Cursor

跳到光標(biāo)處
Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • 將debug執(zhí)行位置跳轉(zhuǎn)到光標(biāo)位置,然后繼續(xù)debug
  • 只能往后面跳,如果光標(biāo)在debug執(zhí)行位置前面,就會(huì)終止debug

8.Evaluate Expression

表達(dá)式計(jì)算:
Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • 獲取已經(jīng)debug過(guò)的參數(shù)的值
    Idea斷點(diǎn)調(diào)試(debug)詳解Idea斷點(diǎn)調(diào)試(debug)詳解
  • 計(jì)算已經(jīng)debug過(guò)的參數(shù)的值(表達(dá)式、方法)
    Idea斷點(diǎn)調(diào)試(debug)詳解Idea斷點(diǎn)調(diào)試(debug)詳解

9.Resume Program

恢復(fù)程序:
Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • 當(dāng)有多個(gè)斷點(diǎn)時(shí)使用
  • 直接跳轉(zhuǎn)到下一個(gè)斷點(diǎn)的位置
    Idea斷點(diǎn)調(diào)試(debug)詳解

10.Stop

停止程序:
Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • 停止debug
  • 會(huì)繼續(xù)跑完程序

11.View BreakPoints

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

作用:

  • 查看所有斷點(diǎn),并進(jìn)行相關(guān)設(shè)置
    Idea斷點(diǎn)調(diào)試(debug)詳解

12.Mute BreakPoints

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

作用:

  • 暫時(shí)禁用掉所有斷點(diǎn),放行程序

3.斷點(diǎn)分類

1.方法斷點(diǎn)

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

給方法打上斷點(diǎn)之后,當(dāng)我們的debug到調(diào)用該方法的位置的時(shí)候,會(huì)直接跳轉(zhuǎn)到方法處(直接Step Out就會(huì)跳轉(zhuǎn))。

2.屬性斷點(diǎn)

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

斷點(diǎn)右鍵可以進(jìn)行設(shè)置:
Idea斷點(diǎn)調(diào)試(debug)詳解

3.異常斷點(diǎn)

添加異常斷點(diǎn)流程:

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

作用:

  • 在全局打上異常(上述添加的是堆棧溢出異常)
  • 只要哪里出現(xiàn)了堆棧溢出異常,程序就會(huì)跳轉(zhuǎn)到那個(gè)地方,方便快速找到異常位置
  • 可在run程序拋出異常后,根據(jù)異常去打斷點(diǎn),然后進(jìn)行調(diào)試

4.條件斷點(diǎn)

右鍵斷點(diǎn),設(shè)置條件,只有當(dāng)滿足條件時(shí),才會(huì)進(jìn)入該斷點(diǎn)程序停留,否則就直接往下面執(zhí)行程序。

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

5.流斷點(diǎn)

調(diào)試流程:

  • 代碼:

        public static void main(String[] args) {
            Stream.of(10, 30, 50, 90, 40)
                    .mapToLong(e -> e*e )
                    .filter(e -> e > 2500)
                    .forEach(System.out::println);
        }
    
  • 斷點(diǎn)調(diào)試:
    Idea斷點(diǎn)調(diào)試(debug)詳解
    Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • 可以查看流的工作流程

6.多線程斷點(diǎn)

調(diào)試流程:

  • 代碼:

        public static void main(String[] args) {
            new Thread(() -> {
                System.out.println();
                System.out.println("thread1 is running");
                StringBuilder sb = new StringBuilder(".");
                for (int i = 0; i < 10; i++) {
                    try {
                        Thread.sleep(100);
                        System.out.print(sb.append(".").toString());
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }, "thread1").start();
    
            new Thread(() -> {
                System.out.println();
                System.out.println("thread22 is running");
                StringBuilder sb = new StringBuilder(".");
                for (int i = 0; i < 10; i++) {
                    try {
                        Thread.sleep(100);
                        System.out.print(sb.append(".").toString());
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }, "thread22").start();
    
            new Thread(() -> {
                System.out.println();
                System.out.println("thread333 is running");
                StringBuilder sb = new StringBuilder(".");
                for (int i = 0; i < 10; i++) {
                    try {
                        Thread.sleep(100);
                        System.out.print(sb.append(".").toString());
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }, "thread333").start();
        }
    
  • 斷點(diǎn):
    Idea斷點(diǎn)調(diào)試(debug)詳解Idea斷點(diǎn)調(diào)試(debug)詳解

  • 查看輸出:
    Idea斷點(diǎn)調(diào)試(debug)詳解

作用:

  • suspend 設(shè)置為 Thread
  • 這樣就可以單個(gè)線程單個(gè)線程地調(diào)試,而不會(huì)出現(xiàn),線程之間爭(zhēng)搶資源的情況(線程不斷切換)

到了這里,關(guān)于Idea斷點(diǎn)調(diào)試(debug)詳解的文章就介紹完了。如果您還想了解更多內(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)文章

  • 一加8手機(jī)【ColorOS Android 13】使用Android Studio在Debug斷點(diǎn)調(diào)試時(shí)自動(dòng)斷開崩潰

    一加8手機(jī)【ColorOS Android 13】使用Android Studio在Debug斷點(diǎn)調(diào)試時(shí)自動(dòng)斷開崩潰

    一加8手機(jī)(系統(tǒng)是ColorOS? Android版本: 13) 在使用android studio進(jìn)行usb調(diào)試過(guò)程中, 總是在幾秒鐘之后就自動(dòng)崩潰退出應(yīng)用(代碼正常,使用其他測(cè)試機(jī)正常調(diào)試), 調(diào)試自然也就斷開了; ?解決辦法: 將【禁止權(quán)限監(jiān)控】開關(guān) 打開即可; --【其他設(shè)置】--【開發(fā)者選項(xiàng)】--【應(yīng)用】--【禁止

    2024年02月12日
    瀏覽(26)
  • IDEA CTRL + 鼠標(biāo)左鍵 查看引用的類和方法名 失效

    IDEA CTRL + 鼠標(biāo)左鍵 查看引用的類和方法名 失效

    突然IDEA的 Ctrl+鼠標(biāo)左鍵 點(diǎn)在方法名上或者類名上,彈不出被引用的列表 ; 還顯示 \\\" 2 usages are out of scope ‘Project test files’ Press Ctrl+Alt+F7 again to search in ‘Project Files’ \\\" 此時(shí)按Ctrl+Alt+F7是可以出現(xiàn)引用的列表的,但是我要的是Ctrl+鼠標(biāo)左鍵 顯示被引用的列表啊! 處理辦法, 在Edit -

    2024年02月15日
    瀏覽(26)
  • 新版IDEA使用ctrl + 鼠標(biāo)左鍵單擊打開代碼覆蓋原標(biāo)簽問題

    新版IDEA使用ctrl + 鼠標(biāo)左鍵單擊打開代碼覆蓋原標(biāo)簽問題

    升級(jí)到2023.01版本之后,與舊版本各種不同,其中用的最難受的就是ctrl+左鍵選中文件后會(huì)覆蓋,今天做個(gè)記錄予以解決 解決方法: 依次點(diǎn)擊:File - Settings - Editor - General - Editor Tabs 下圖所示,取消勾選即可解決!

    2024年02月04日
    瀏覽(22)
  • idea的斷點(diǎn)調(diào)試

    idea的斷點(diǎn)調(diào)試

    1、行斷點(diǎn) 首先在代碼的最左側(cè)點(diǎn)擊會(huì)顯示紅色的圓圈 第二步在main方法中右鍵選中debug run進(jìn)行運(yùn)行 會(huì)出現(xiàn)下面圖片的情況 出現(xiàn)上圖之后,點(diǎn)擊console 下一步 這個(gè)時(shí)候就可以看到調(diào)試的結(jié)果了 6、方法調(diào)用棧:這里顯示了該線程調(diào)試所經(jīng)過(guò)的所有方法,勾選右上角的[Show All

    2024年02月10日
    瀏覽(23)
  • Idea 對(duì)容器中的 Java 程序斷點(diǎn)遠(yuǎn)程調(diào)試

    Idea 對(duì)容器中的 Java 程序斷點(diǎn)遠(yuǎn)程調(diào)試

    直接在java程序中添加log.info(),根據(jù)需要打印信息 然后打包覆蓋,根據(jù)日志查看相關(guān)信息 第二種:遠(yuǎn)程調(diào)試 在IDEA右上角點(diǎn)擊編輯配置 設(shè)置相關(guān)參數(shù) 在Dockerfile中加入 完整代碼如下: 或直接用命令 啟動(dòng)容器,然后開啟IDEA的調(diào)試模式(注意不是運(yùn)行),控制臺(tái)顯示連接成功即

    2024年02月05日
    瀏覽(26)
  • 第04章_IDEA的安裝與使用(下)(IDEA斷點(diǎn)調(diào)試,IDEA常用插件)

    第04章_IDEA的安裝與使用(下)(IDEA斷點(diǎn)調(diào)試,IDEA常用插件)

    8.1 常用快捷鍵 8.2 查看快捷鍵 1、已知快捷鍵操作名,未知快捷鍵 2、已知快捷鍵,不知道對(duì)應(yīng)的操作名 8.3 自定義快捷鍵 8.4 使用其它平臺(tái)快捷鍵 蘋果電腦或者是用慣Eclipse快捷的,可以選擇其他快捷鍵插件。 9.1 為什么需要Debug 編好的程序在執(zhí)行過(guò)程中如果出現(xiàn)錯(cuò)誤,該如何

    2024年01月23日
    瀏覽(24)
  • IDEA遠(yuǎn)程DeBug調(diào)試

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

    1. 介紹 當(dāng)我們?cè)陂_發(fā)過(guò)程中遇到一些復(fù)雜的問題或需要對(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實(shí)現(xiàn)遠(yuǎn)程debug調(diào)試
  • IntelliJ IDEA遠(yuǎn)程調(diào)試:使用IDEA Remote Debug進(jìn)行高效調(diào)試的指南

    IntelliJ IDEA遠(yuǎn)程調(diào)試:使用IDEA Remote Debug進(jìn)行高效調(diào)試的指南

    在開發(fā)分布式系統(tǒng)時(shí),調(diào)試是一個(gè)重要但復(fù)雜的環(huán)節(jié)。開發(fā)者通常需要跨越多個(gè)服務(wù)、模塊和線程來(lái)追蹤和解決問題。在沒有遠(yuǎn)程調(diào)試的情況下,許多開發(fā)者會(huì)在代碼中添加各種日志語(yǔ)句,然后重新部署和上線來(lái)調(diào)試。這種方法不僅費(fèi)時(shí),而且可能引入額外的錯(cuò)誤或問題。

    2024年02月09日
    瀏覽(26)
  • idea 對(duì)JavaScript進(jìn)行debug調(diào)試

    idea 對(duì)JavaScript進(jìn)行debug調(diào)試

    前言 : 工作中接手別人的前端代碼沒有注釋,看瀏覽器的network或者console切來(lái)切去,很麻煩,可以試試idea自帶的 javscript debug 功能。 瀏覽器中輸入url 查看debug斷點(diǎn) 看到斷點(diǎn)的變量就顯示了。 大功告成?。?/p>

    2024年02月11日
    瀏覽(31)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包