IEDA的程序调试debug
以前只是浅层面的使用dubug来查看程序运行顺序,排查一些异常的原因,
今天由于要学习一些源码,所以系统的记录一下(借鉴网上资料总结而来)
主要涉及到的功能区为如下:
A::重启项目 快捷键 Ctrl + F5
B:恢复程序 快捷键 F9 ,上一个断点跳到下一个断点,没有下一个断点,直接运行到程序结束
C:暂停,没怎么用过
D:停止当前运行的项目 快捷键 Ctrl + F2
E:查看所有断点,你看那个标志嘛,两个断点打堆堆,就是多个断点的意思
F:使所有断点无效,使用场景为:当我们利用debug已经找到问题所在后,使用该功能,直接使程序运行到结束
接下来是日常调试过程中常用的几个功能;
1:Show Execution Point (Alt + F10)
如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前代码执行的行。
2:Step Over (F8)
越过,一行一行地往下走,如果这一行上有方法不会进入方法。
3:Step Into (F7)
步入,如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法。
4: Force Step Into (Alt + Shift + F7)
强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法。
5:Step Out (Shift + F8)
步出,从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值
6:Drop Frame
回退断点
7:. Run to Cursor (Alt + F9)
运行到光标处,你可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点。
8: Evaluate Expression (Alt + F8)
计算表达式。
差不多就这些吧,
听说使用debug的看不起使用 System,out.println("测试")的????
就如同写汇编的看不起写C的,写C的看不起写Java的,PHP是世界上最好的语言???