<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          IDEA的Debug技巧

          共 1628字,需瀏覽 4分鐘

           ·

          2021-05-08 23:14

          點擊上方藍色字體,選擇“標(biāo)星公眾號”

          優(yōu)質(zhì)文章,第一時間送達

            作者 |  aduner

          來源 |  urlify.cn/eAv2Qj

          01_Debug簡介和意義

          • 什么是程序DeBug?

            • Debug,是程序開發(fā)人員必會的一項調(diào)試程序的技能。

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

          • Debug能幫助我們做什么?

            1. 追蹤代碼的運行流程。

            2. 程序運行異常定位。

            3. 線上問題追蹤。

          • Debug對于程序?qū)W習(xí)者的意義

            1. 通過調(diào)試能夠更好的查看程序的執(zhí)行流程。

            2. 復(fù)雜的程序邏輯,通過老師的口述講解,很難理解清楚,這個時候借助調(diào)試能夠很好的幫助同學(xué)們理解程序。

            3. 定位問題,提高自我解決問題的能力。

          02_IDEA中的Debug步驟

          • 設(shè)置斷點(F9)

          • 調(diào)試程序(8個按鈕)

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

            • 程序區(qū)查看變量

            • Debugger的Variables中查看變量

            • 鼠標(biāo)懸停到變量名上會彈出當(dāng)前變量的值

            • 查看變量有三種方式:

          • 查看輸出

          03_跳轉(zhuǎn)到當(dāng)前代碼執(zhí)行的行

          • 跳轉(zhuǎn)到當(dāng)前代碼執(zhí)行的行(Alt + F10)

          • 作用

            • 使程序窗口切換到當(dāng)前正在運行的程序處。

          04_步過調(diào)試的使用

          • 步過調(diào)試

            • 步過調(diào)試按鈕(F8)

          • 作用

            • 步過,一行一行地往下走,如果這一行上有方法不會進入方法。

            • 常用于調(diào)試過程中不想進入調(diào)用的方法體的情況。

          05_步入調(diào)試的使用

          • 步入調(diào)試

            • 步過調(diào)試按鈕(F7)

          • 作用

            • 步入,一行一行地往下走,如果這一行上有方法,則進入方法內(nèi)部。

            • 一般用于進入自定義方法內(nèi),不會進入官方類庫的方法。

          06_強制步入調(diào)試的使用

          • 強制步入調(diào)試

            • 強制步入調(diào)試按鈕(Alt + Shift + F7)

          • 作用

            • 進入官方類庫方法

            • 幫助我們學(xué)習(xí)和查看JDK源碼

          07_步出調(diào)試的使用

          • 步出調(diào)試

            • 步出調(diào)試按鈕(Shift + F8)

          • 作用

            • 從方法內(nèi)退出到方法調(diào)用處。

            • 調(diào)試的時候,有時候會跳入到自己不想查看的方法體,這個時候使用步出。

          08_回退斷點調(diào)試的使用

          • 回退斷點

            • 回退斷點按鈕 

          • 作用

            • 回退到當(dāng)前方法的調(diào)用處。

            • 當(dāng)想重新查看該方法體的執(zhí)行過程時,不用重新啟動Debug,可以使用回退斷點方式。

          09_運行到光標(biāo)處

          • 運行到光標(biāo)處

            • 使程序運行到光標(biāo)處,而無需設(shè)置斷點。

            • 運行光標(biāo)處按鈕 (F9)

            • 作用

          10_計算表達式

          • 計算表達式

            • 計算表達式按鈕(Alt + F8)

          • 作用

            • 設(shè)置變量,在計算表達式的框里,可以改變變量的值,這樣有時候就能很方便我們?nèi)フ{(diào)試各種值的情況了。

          11_條件斷點

          • 條件斷點

            • 右鍵單擊斷點處,可以設(shè)置進入斷點的條件

          • 作用

            • 通過設(shè)置斷點條件,在滿足條件時,才停在斷點處,否則直接運行。

          12_多線程調(diào)試

          • 步驟

            • 多線程調(diào)試,需要調(diào)整斷點掛起級別為Thread

            • Frame中選擇線程進行調(diào)試

          end



          我是【程序員二胡熱愛技術(shù)分享,信仰終身學(xué)習(xí),愛運動旅游,也是一個萌新up主,我們下期再見!


          感謝點贊支持下哈 

          瀏覽 54
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲欧洲日本在线 | 亚洲二视频 | caobiyingshi | 在线视频你懂得 | 成人日韩AV电影 |