1. 背景介紹
我們程序員一生與Bug糾纏不清,自然一輩子離不開調(diào)試
今天的話題就講程序員與Debug不得不說的故事
百度上講赴捞,調(diào)試是保證所提供的設(shè)備能夠正常運(yùn)行的必須程序作谭,所有費(fèi)用由設(shè)備提供商負(fù)擔(dān)硼讽。
編好程序后捉偏,用各種手段進(jìn)行查錯(cuò)和排錯(cuò)的過程鸳君。
說道調(diào)試一定離不開Debug
今天就重點(diǎn)講講Debug的故事
DEBUG是一種計(jì)算機(jī)程序农渊。
馬克2號(hào)(Harvard Mark II)編制程序的葛麗絲·霍波(Grace Hopper)是一位美國海軍準(zhǔn)將及計(jì)算機(jī)科學(xué)家,同時(shí)也是世界最早的一批程序設(shè)計(jì)師之一或颊。 有一天砸紊,她在調(diào)試設(shè)備時(shí)出現(xiàn)故障,拆開繼電器后囱挑,發(fā)現(xiàn)有只飛蛾被夾扁在觸點(diǎn)中間醉顽,從而“卡”住了機(jī)器的運(yùn)行。 于是平挑,霍波詼諧的把程序故障統(tǒng)稱為“臭蟲(BUG)”游添,把排除程序故障叫DEBUG系草,而這奇怪的“稱呼”,竟成為后來計(jì)算機(jī)領(lǐng)域的專業(yè)行話唆涝。
2. Debugger
Debugger是什么找都?干什么的?怎么用廊酣?
我們經(jīng)常使用到的“Debugger”只是用來幫助我們進(jìn)行Debug的工具能耻,“Debugger”本身不能自動(dòng)完成“Debug”。
我們可以回想一下我們是如何進(jìn)行Debug的啰扛,在進(jìn)行Debug的過程中嚎京,我們通過Debugger來完成以下工作:
(1)監(jiān)視“Debug對(duì)象”的狀態(tài);
(2)控制“Debug對(duì)象”的運(yùn)行隐解;
這些工作可以為“發(fā)現(xiàn)Debug對(duì)象中存在的問題”以及“對(duì)解決問題方案的檢驗(yàn)”提供有用的信息鞍帝。 監(jiān)控工作有時(shí)只需要由軟件就可以完成,有時(shí)不僅需要軟件支持煞茫,還需要硬件的支持帕涌。 Debugger除了被用來Debug,還被用來幫助我們理解“Debug的對(duì)象”內(nèi)部結(jié)構(gòu)续徽,因?yàn)槲覀冇玫降腄ebugger能夠完成對(duì)“Debug對(duì)象”的監(jiān)控工作蚓曼, 在監(jiān)控的過程中可以獲取“Debug對(duì)象”動(dòng)態(tài)特征的信息,這對(duì)我們理解其結(jié)構(gòu)是非常有用的钦扭。
先給一些快捷鍵
F7:單步調(diào)試纫版,會(huì)進(jìn)入方法體,如果該方法體還有方法客情,則不會(huì)進(jìn)入該內(nèi)嵌的方法中
F8:單步調(diào)試其弊,不會(huì)進(jìn)入
F9:跳至下一斷點(diǎn)
Shift+F8:跳出
Alt+F8:可以通過在 Debug 的狀態(tài)下,選中對(duì)象膀斋,彈出可輸入計(jì)算表達(dá)式調(diào)試框梭伐,查看該輸入內(nèi)容的調(diào)試結(jié)果 。
暫時(shí)知道這么多就已經(jīng)可以了
怎么用仰担,請(qǐng)移步視頻區(qū)
PPT:https://ptteng.github.io/PPT/PPT-java/java-task1-Debug.html#/