人话讲解Debug工具

人话讲解Debug工具

Debugging:调试

断点:马上要执行这行代码,但还没执行的时候。

这里说明一个个人多年的理解错误:

调试是控制调试器的暂停位置不会跳过任何代码的执行,也不会改变程序的原有执行顺序。

程序始终按照代码逻辑顺序执行,只是调试器的“观察窗口”会根据你的操作调整暂停的位置。

只会暂停!不会跳过任何代码执行,也不会改变程序的执行顺序!

快捷键

1.F8:step over,一行行执行

  • 逐行执行代码,但不会进入方法内部!

variables是当前变量的情况。

如果先用step into进入了方法内部,那么点击step over还是一行行执行。

2.F7:Step Into:进入方法内部,一行行调试

  • 进入当前行调用的方法内部,逐行调试该函数。

如果当前行没有函数或者在方法内部,那么相当于step over。

3.Shift + F8:Step out:跳出方法,并返回到调用方法的位置。

  • 执行完当前方法的剩余代码,并返回到调用它的位置。

正常使用:使用过step into 进入方法之后(或者不使用,已经在main方法中了),使用step out能执行当前方法的剩余代码,并返回到调用它的位置。

因为进入的必然是main方法,什么时候都可以用step out。

理解“并返回到调用它的位置”:

举例:如果a();进入了,现在在a方法内部,然后使用step out,那么会执行完a方法剩余的语句,并跳出。跳出在a();语句的下方,但还未执行下一句语句的地方。(相当于在a()语句下方的语句打了断点的效果)。

4.F9:Resume programe继续恢复

只有一个断点时

当调试到一半,想要继续Run程序,那么点击F9,能执行剩余的程序直到结束。

有多个断点时(常用):

点击F9,则会跳到下一个断点的位置,继续调试

其他:

Ctrl+F2:Stop
Ctrl+shift+F8:View Breakpoints

断点视图,打开后

可以取消断点。对勾--->done即可。

Scanner的对象.nextInt()

这里会阻塞,再点击F8step over是没有用的,需要键盘输入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值