本文鏈接:https://blog.csdn.net/u011781521/article/details/55000066
http://blog.csdn.net/u010075335/article/details/51222493
系列文章
1.表示當前實現繼續運行直到下一個斷點,快捷鍵為F8。
2.表示打斷整個進程
3.表示進入當前方法,快捷鍵為F5。
4.表示運行下一行代碼,快捷鍵為F6。
5.表示退出當前方法,返回到調用層,快捷鍵為F7。
6.表示當前線程的堆棧,從中可以看出在運行哪些代碼,並且整個調用過程,以及代碼行號
詳細介紹:
Step Return : 跳出當前方法,在被調用方法的執行過程中,使用Step Return會在執行完當前方法的全部代碼后跳出該方法返回到調用該方法的方法中。
Step Over : 在單步執行時,在函數內遇到子函數時不會進入子函數內單步執行,而是將子函數整個執行完在停止,也就是把子函數整個作為一步。
Step Into:單步執行,遇到子函數就進入並且繼續單步執行
Resume:恢復暫停的線程,直接從當前位置跳到下一個斷點位置。
Suspend:暫停選定的線程,這個時候可以進行瀏覽或者修改代碼,檢查數據等。
Eclipse通過Suspend與Resume來支持線程的暫掛與恢復。一般來講,Suspend適用於多線程程序的調試,當需要查看某一個線程的堆棧幀及變量值時,我們可以通過Suspend命令將該線程暫掛。Resume用於恢復。有兩種Resume需要注意:
- 第一是當在調試過程中修改程序代碼,然后保存,點擊Resume,此時程序會暫掛於斷點。
- 第二是當程序拋出異常時,運行Resume,程序也會暫掛於斷點。
Terminate : Eclipse通過Terminate命令終止對本地程序的調試。
Disconnect:Eclipse使用Disconnect命令來終止與遠程JVM的socket連接。
Skip All Breakpoints : 將所有斷點設置為被跳過的,設置了Skip All Breakpoints之后,所有斷點上都會有一個斜線,表示斷點將被跳過,線程不會在該斷點處被掛起。
Drop to Frame : 這個命令可以讓程序回到當前方法的開頭第一行重新開始執行,可以重新執行這個java堆棧幀,可以選擇一個指定的堆棧幀,然后點擊 Drop to Frame,這樣就可以重新進入指定的堆棧幀。使用Drop to Frame時候需要注意:
- 1.不能drop到已經執行過的方法棧中的方法中。
- 2.drop到stack frame中時,不會改變全局數據原有的值,比如,一個包含元素的vertor並不會被清空。
Step Filters : 這個功能比較簡單,就是當我們在debug的時候想要忽略一些我們不關注的類時,可以開啟Step Filters進行過濾,程序會一直執行直到遇到未經過濾的位置或斷點。Step Filters功能由Use Step Filters,Edit Step Filters,Filter Type,Filter Package四項組成。具體操作如下:
- 步驟 1: Windows -> Preferences -> Java -> Debug -> Step Filtering.
- 步驟 2:選擇‘Use Step Filters’
- 步驟 3:在屏幕上選中所需的選項。你可以添加你自己代碼庫中的部分代碼。
- 步驟 4:點擊‘Apply’
原理上,Edit Step Filter命令用於配置Step Filter規則,而Filter Type與Filter Package分別指的是過濾的Java類型與Java Package。