IDEA的Debug技巧


01_Debug簡介和意義

  • 什么是程序DeBug?

    • Debug,是程序開發人員必會的一項調試程序的技能。

    • 企業中程序開發和程序調試的比例為1:1.5,可以說如果你不會調試程序,你就沒有辦法從事編程工作。

  • Debug能幫助我們做什么?

    1. 追蹤代碼的運行流程。
    2. 程序運行異常定位。
    3. 線上問題追蹤。
  • Debug對於程序學習者的意義

    1. 通過調試能夠更好的查看程序的執行流程。
    2. 復雜的程序邏輯,通過老師的口述講解,很難理解清楚,這個時候借助調試能夠很好的幫助同學們理解程序。
    3. 定位問題,提高自我解決問題的能力。

02_IDEA中的Debug步驟

  • 設置斷點(F9)

  • 調試程序(8個按鈕)

    按鈕 說明
    (Alt + F10):如果你的光標在其它行或其它頁面,點擊這個按鈕可跳轉到當前代碼執行的行
    (F8):步過,一行一行地往下走,如果這一行上有方法不會進入方法。
    (F7):步入。如果當前行有方法,可以進入方法內部,一般用於進入自定義方法內,不會進入官方類庫的方法。
    (Alt + Shift + F7):強制步入,能進入任何方法,查看底層源碼的時候可以用這個進入官方類庫的方法。
    (Shift + F8):步出,從步入的方法內退出到方法調用處,此時方法已執行完畢,只是還沒有完成賦值。
    回退斷點。回退到當前方法的調用處。
    (Alt + F9):運行到光標處,你可以將光標定位到你需要查看的那一行,然后使用這個功能,代碼會運行至光標行,而不需要打斷點。
    (Alt + F8):計算表達式。
  • 觀察變量

    • 查看變量有三種方式:
      • 程序區查看變量
      • 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中選擇線程進行調試


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM