在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C++/ Debug 介紹
介紹
IntelliJ IDEA 界面介紹
最特殊的快捷鍵 Alt + Enter 介紹
IntelliJ IDEA 配合 Maven 的一些技巧
文件代碼模板的使用
常見(jiàn)文件類(lèi)型的圖標(biāo)介紹
IntelliJ IDEA 推薦設(shè)置講解
Maven 項(xiàng)目介紹
IntelliJ IDEA 相關(guān)核心文件和目錄介紹
Debug 介紹
IntelliJ IDEA 常用設(shè)置講解 - 2
IntelliJ IDEA 插件開(kāi)發(fā)視頻教程
IntelliJ IDEA 緩存和索引介紹和清理方法
IntelliJ IDEA 主題、字體、編輯區(qū)主題、文件編碼修改、亂碼問(wèn)題
Maven 的單模塊 Spring Boot 項(xiàng)目
IntelliJ IDEA 遠(yuǎn)程調(diào)試 Tomcat
插件的使用
IntelliJ IDEA 編譯方式介紹
IntelliJ IDEA For Mac 快捷鍵
IntelliJ IDEA 常用設(shè)置講解 - 1
首次運(yùn)行
Ubuntu 系統(tǒng)下安裝 IntelliJ IDEA
數(shù)據(jù)庫(kù)管理工具介紹
重構(gòu)講解
從 Windows 過(guò)度到 Mac 必備快捷鍵對(duì)照表
Windows 系統(tǒng)下安裝 IntelliJ IDEA
Maven 的單模塊 / 多模塊之 Spring MVC + Spring + Spring Data JPA 項(xiàng)目
版本控制的使用
IntelliJ IDEA 的 Java 熱部署插件 JRebel 安裝及使用
IntelliJ IDEA 常用設(shè)置講解 - 3
Emmet 的使用
Postfix Completion 的使用
Mac 系統(tǒng)下安裝 IntelliJ IDEA
本系列教程結(jié)束
實(shí)時(shí)代碼模板的使用
快捷鍵
IntelliJ IDEA 項(xiàng)目相關(guān)的幾個(gè)重要概念介紹
安裝總結(jié)
Maven 的單模塊 / 多模塊之 Spring MVC + Spring + Mybatis 項(xiàng)目講解
關(guān)于
Eclipse 的 Java Web 項(xiàng)目環(huán)境搭建
IntelliJ IDEA 常用設(shè)置講解 - 4
Hello World 項(xiàng)目創(chuàng)建與項(xiàng)目配置文件介紹

Debug 介紹

Debug 設(shè)置

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-a-debug-settings-1.jpg" alt="Debug 設(shè)置" />

  • 如上圖標(biāo)注 1 所示,表示設(shè)置 Debug 連接方式,默認(rèn)是 Socket。Shared memory 是 Windows 特有的一個(gè)屬性,一般在 Windows 系統(tǒng)下建議使用此設(shè)置,相對(duì)于 Socket 會(huì)快點(diǎn)。

Debug 常用快捷鍵

快捷鍵 介紹
F7 在 Debug 模式下,進(jìn)入下一步,如果當(dāng)前行斷點(diǎn)是一個(gè)方法,則進(jìn)入當(dāng)前方法體內(nèi),如果該方法體還有方法,則不會(huì)進(jìn)入該內(nèi)嵌的方法中 必備
F8 在 Debug 模式下,進(jìn)入下一步,如果當(dāng)前行斷點(diǎn)是一個(gè)方法,則不進(jìn)入當(dāng)前方法體內(nèi) 必備
F9 在 Debug 模式下,恢復(fù)程序運(yùn)行,但是如果該斷點(diǎn)下面代碼還有斷點(diǎn)則停在下一個(gè)斷點(diǎn)上 必備
Alt + F8 在 Debug 的狀態(tài)下,選中對(duì)象,彈出可輸入計(jì)算表達(dá)式調(diào)試框,查看該輸入內(nèi)容的調(diào)試結(jié)果 必備
Ctrl + F8 在 Debug 模式下,設(shè)置光標(biāo)當(dāng)前行為斷點(diǎn),如果當(dāng)前已經(jīng)是斷點(diǎn)則去掉斷點(diǎn)
Shift + F7 在 Debug 模式下,智能步入。斷點(diǎn)所在行上有多個(gè)方法調(diào)用,會(huì)彈出進(jìn)入哪個(gè)方法
Shift + F8 在 Debug 模式下,跳出,表現(xiàn)出來(lái)的效果跟 F9 一樣
Ctrl + Shift + F8 在 Debug 模式下,指定斷點(diǎn)進(jìn)入條件
Alt + Shift + F7 在 Debug 模式下,進(jìn)入下一步,如果當(dāng)前行斷點(diǎn)是一個(gè)方法,則進(jìn)入當(dāng)前方法體內(nèi),如果方法體還有方法,則會(huì)進(jìn)入該內(nèi)嵌的方法中,依此循環(huán)進(jìn)入
Drop Frame 這個(gè)不是一個(gè)快捷鍵,而是一個(gè) Debug 面板上的按鈕。該按鈕可以用來(lái)退回到當(dāng)前停住的斷點(diǎn)的上一層方法上,可以讓過(guò)掉的斷點(diǎn)重新來(lái)過(guò)

有時(shí)候我們可以這樣粗魯?shù)卣J(rèn)為 Debug 的使用就是等同于這幾個(gè)快捷鍵的使用,所以上面的 必備 快捷鍵是我們必須牢記的,這些也是開(kāi)發(fā)很常用的。

Debug 特殊技能使用

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-b-debug-use-1.gif" alt="Debug 特殊技能使用" />

  • 如上圖 Gif 所示,查看所選對(duì)象的方法常用有三種方式:
  • 選中對(duì)象后,使用快捷鍵 Alt + F8。
  • 選中對(duì)象后,拖動(dòng)對(duì)象到 Watches。
  • 選中對(duì)象后,鼠標(biāo)懸停在對(duì)象上 2 秒左右。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-b-debug-use-2.gif" alt="Debug 特殊技能使用" />

  • 如上圖 Gif 所示,在彈出表達(dá)式輸入框中 IntelliJ IDEA 也是能幫我們智能提示。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-b-debug-use-3.gif" alt="Debug 特殊技能使用" />

  • 如上圖 Gif 所示,當(dāng)我們需要過(guò)掉后面的所有斷點(diǎn)的時(shí)候,我們不需要去掉這些斷點(diǎn),只需要點(diǎn)擊左下角那個(gè)小圓點(diǎn),點(diǎn)擊小圓點(diǎn)之后,所有斷點(diǎn)變成灰色,然后我們?cè)僭诎纯旖萱I F9 即可過(guò)掉當(dāng)前和后面所有的斷點(diǎn)。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-b-debug-use-4.gif" alt="Debug 特殊技能使用" />

  • 我們可以給斷點(diǎn)設(shè)置進(jìn)入的條件。如上圖 Gif 所示,因?yàn)樽兞?temp3 不等于 200 所以該斷點(diǎn)沒(méi)有被進(jìn)入直接跳過(guò)。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-c-debug-use-2.jpg" alt="Debug 特殊技能使用" />

  • 如上圖,我們可以給斷點(diǎn)設(shè)置更復(fù)雜的步入條件
  • 紅框中的 Pass count 表示跳過(guò)多少次后開(kāi)始步入,比如 for 循環(huán)中,我們要查看一個(gè)變量循環(huán) 3 次后的結(jié)果就可以使用該方式。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-c-debug-use-3.jpg" alt="Debug 特殊技能使用" />

  • 如上圖,對(duì)于某些不重要的斷點(diǎn),只要步入一次就夠了,就可以勾選此選項(xiàng),讓它步入之后自動(dòng)刪除。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-c-debug-use-4.jpg" alt="Debug 特殊技能使用" />

  • 如上圖,對(duì)于某些場(chǎng)景的斷點(diǎn),需要其他斷點(diǎn)先觸發(fā)之后再進(jìn)行觸發(fā),可以選擇此項(xiàng)。默認(rèn)選擇的是: None

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-b-debug-use-5.gif" alt="Debug 特殊技能使用" />

  • 有時(shí)候當(dāng)我們步入方法體之后,還想回退到方法體外。如 Gif 演示,斷點(diǎn)進(jìn)入 addNum 方法后,點(diǎn)擊 Drop Frame 按鈕之后,斷點(diǎn)重新回到方法體之外。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xxiii-c-debug-use-1.jpg" alt="Debug 特殊技能使用" />

  • 上圖 IntelliJ IDEA 版本:2017.1.3
  • 如上圖左側(cè)紅框內(nèi)容,可以看到當(dāng)前斷點(diǎn)線程執(zhí)行的堆棧情況,最上面的為當(dāng)前斷點(diǎn)位置,下面的是斷點(diǎn)前面執(zhí)行的方法,如果需要看斷點(diǎn)前面走過(guò)的路,可以查看該區(qū)域。并且可以用圖上箭頭按鈕進(jìn)行限制顯示框架類(lèi)代碼的執(zhí)行過(guò)程,而不是包括依賴(lài) jar 里面的執(zhí)行過(guò)程。
  • 如上圖右側(cè)紅框內(nèi)容,可以用來(lái)展示單點(diǎn)斷點(diǎn)位置的內(nèi)存情況,對(duì)于判斷內(nèi)存溢出相關(guān)問(wèn)題很有幫助。