調(diào)試您的第一個Java應(yīng)用程序

2018-08-16 14:01 更新

調(diào)試您的第一個Java應(yīng)用程序

開始之前

您已經(jīng)創(chuàng)建并執(zhí)行了第一個Java應(yīng)用程序。現(xiàn)在是時候調(diào)試它了。

但是,在應(yīng)用程序中再添加一行是很好的,如下所示:

System.out.println("it's me, Wombat!");

放置斷點

要啟動調(diào)試器會話,首先需要在要暫停應(yīng)用程序執(zhí)行的語句中放置斷點?,F(xiàn)有的源代碼并沒有為您提供多少選擇 - 唯一可以放置斷點的地方是在下列語句中:

System.out.println("Hello World!"); System.out.println("it's me, Wombat!");

所以我們這樣做吧。單擊要放置斷點的語句行左側(cè)的裝訂線,或者只需按Ctrl+F8:

調(diào)試您的第一個Java應(yīng)用程序

如您所見,新斷點將添加到源代碼中。設(shè)置斷點的行將其顏色更改為粉紅色。

如果只是將鼠標(biāo)指針懸停在斷點上,您將在工具提示中看到它的屬性:

調(diào)試您的第一個Java應(yīng)用程序

假設(shè)您要更改此斷點的某些屬性。然后右鍵單擊它并看到以下對話框:

HWDebug斷點屬性

最后,您希望瀏覽并更改斷點的所有可用屬性,并查看其在其他斷點(如果有)中的位置。在這種情況下,請按Ctrl+Shift+F8:

HWDebug斷點屬性已滿

啟動調(diào)試器會話

現(xiàn)在添加了斷點,您可以調(diào)試應(yīng)用程序。這可以通過多種方式完成;但是,讓我們按照最簡單的方式。

注意使用該main()方法標(biāo)記類的圖標(biāo) 。單擊此圖標(biāo)會顯示一個菜單,可以運行和調(diào)試這樣的類:

HWDebug開始會話

這是什么意思?

IntelliJ IDEA使用臨時運行/調(diào)試配置啟動了調(diào)試器會話 。此運行/調(diào)試配置具有默認名稱“HelloWorld.main()”。要查看和更改此運行/調(diào)試配置的設(shè)置,請在主菜單上選擇:運行|編輯配置... (Run | Edit Configurations... ):

ij runConfigMenu

或單擊運行/調(diào)試配置選擇器,然后選擇:編輯配置...(Edit Configurations...):

HWDebug runco??nfig

IntelliJ IDEA編譯您的應(yīng)用程序(這需要時間!),然后在第一個斷點處掛起應(yīng)用程序。

IntelliJ IDEA窗口現(xiàn)在看起來不同了:

  • 第一個改變的是帶斷點的第一行的顏色?,F(xiàn)在該行呈現(xiàn)藍色:
    HWDebug斷點命中
    這意味著(根據(jù)斷點屬性)應(yīng)用程序已到達此斷點,在println語句之前命中它并暫停。
  • 接下來,在IntelliJ IDEA窗口的下半部分,出現(xiàn)了一個特殊的工具窗口。這是調(diào)試(Debug)工具窗口,其中包含分步(stepping)工具欄,并顯示調(diào)試器會話期間可能需要的所有必要信息:
    HWDebug工具窗口 

逐步執(zhí)行應(yīng)用程序

直接逐步完成語句

讓我們逐步完成應(yīng)用程序。單擊分步(stepping)工具欄上的 ,或者按:F8。

下一行現(xiàn)在變成藍色。如果查看“調(diào)試(Debug)”工具窗口,您會注意到以下更改:

  • 在“框架(Frames)”窗格中,將顯示下一個行號。
  • “控制臺(Console)”選項卡標(biāo)有圖標(biāo) ,表示它包含新輸出。

HWDebug breakpoint2命中

單擊控制臺(Console)選項卡。您會看到第一行的消息,其中包含斷點“Hello,World!”。第二條消息尚未顯示:

HWDebug控制臺

再次單擊步進工具欄上的 圖標(biāo),或按:F8?,F(xiàn)在第二條消息出現(xiàn)在控制臺中。下次單擊 后,應(yīng)用程序停止:

HWDebug console2

此調(diào)試會話結(jié)束。

逐句調(diào)用方法調(diào)用

現(xiàn)在讓我們探索一種更復(fù)雜的方式,并進入println()調(diào)用。

首先,重新啟動調(diào)試器會話。為此,只需單擊“調(diào)試(Debug)”工具窗口的工具欄上的 即可 。因此,您將重新運行最新的運行/調(diào)試配置,即:HelloWorld。

應(yīng)用程序再次在第一個斷點處暫停。這一次,單擊 或按Shift+Alt+F7。你看到了不同的畫面:

HWDebug步入班級

這意味著IntelliJ IDEA已經(jīng)進入了PrintStream.java庫類的println(String x)方法。請注意,線程列表中會出現(xiàn)一個新線程。

單擊 或按Shift+F8,以返回下一個斷點:

HWDebug breakpoint3命中

請注意,控制臺選項卡再次獲得標(biāo)記 ,這意味著新輸出可用。接下來,單擊 。您看到該進程終止:

HWDebug應(yīng)用程序停止

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號