文章插图
作为开发人员,掌握开发环境下的调试技巧十分有必要 。我们在编写Java程序的过程中,经常会遇到各种莫名其妙的问题,为了检测程序是哪里出现问题,经常需要增加日志,看变量的值,这样调试很麻烦 。假设我每天花费1小时在调试我的应用程序上的话,那累积起来的话也是很大量的时间 。由于这个原因,用这些时间来重视并了解所有使我们调试更方便的功能 。那能为你省下一些时间,也将会使你的生活更安逸、轻松 。
首先我们需要注意三个点:不要使用System.out.println作为调试工具使用一个日志分析器来阅读日志启用所有组件的详细的日志记录级别
一个关于调试的疯狂声明作为开头 。但它必须是要说的!尝试切分一下你那复杂的逻辑成多个独立的单元,并编写单元测试来检测你代码的正确性 。我想像如下这样的流程应该是发生得非常频繁的—-一些人通过大型web应用程序点击、填写多个表单、切换到不同的页面、正在最后的页面上检测工个计算逻辑和实现这个调试视图中的大部分逻辑 。在启动你的tomcat之前总是问你自己:有没有方法使用一个单元测试来检测这些行为?你在过去这些时间可以不知道或已忘记这些,但从现在开始,我们将要关注一些eclipse的调试技巧,你会发现有大量的关于良好代码设计的好东西 。
Debug模式的界面,共分为5个区域
(1)Debug(调试)区域,显示当前正在调试代码是什么,在第多少行
(2)Variables(变量)区域,显示变量的值 。
(3)代码编辑区
(4)代码结构区,显示代码中的各个方法 。
(5)Console(控制台)区域 。
一、条件断点
我们通常调试断点的时候一般就是点击行号的左边,这个时候就会有断点被打起来 。在debug视图中,BreakPoint View将所有断点都列出来,但是我们可以添加一个boolean类型的条件来决定断点是否被跳过 。如果条件为真,在断点处程序将停止,否则断点被跳过,程序继续执行 。如果你只对应用中的某部分感兴趣的话,这个功能非常有用 。例如,如果你要在第13次循环的时候检查程序,或者在一个抽象父类中调试某些功能,而你只关注其中一个具体的实现 。你可以在断点视图中设置条件,或者通过代码旁边的蓝色断点标记的右键菜单(”Breakpoint Properties”)设置 。你可以在条件代码片段为true的时候暂停程序,或者当代码片段的值改变的时候挂起程序 。
断点属性中有三个选择,启用“Enable”,Hit Count和Conditional中依据我们的需要来选择 。
1)Hit Count 是指定断点处的代码段运行多少次,最典型的就是循环,如果要让一个循环执行10次就线程挂起,则指定Hit Count值为10,那么当前的循环执行到第九次的时候就会挂掉 。
2)Conditional,顾名思义,就是条件判断,例如我们需要循环变量i==10时,线程挂起,则条件设定为i==10,选择Suspend when “true” 。
那如果上面的Hit Count和Conditional都选择的话,如果表达式和值设置不合理则会实效 。如果选择Suspend when value changes,那么可能在Conditional在变量值发生改变的时候就挂起 。
二、变量视图
1、变量名视图,显示当前代码行中所有可以访问的实例变量和局部变量2.显示所有的变量值3.可以通过该窗口来改变变量值
如果你需要在变量视图查看一个Map对象或者List对象的值,对于eclipse的默认设置,一般并不是那么容易 。假设,你使用的是HashMap,你需要点击遍历各个实体条目,并面临各种HashMap的实现细节 。但是,在变量视图上面有一个叫做“Show Logical Structure”的按钮 。它非常有用,尤其当你的对象的toString()方法所展示的信息并不友好的时候 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 讲解vivox9恢复出厂设置密码 vivox9强制解锁教程
- 讲解汉字内码正确形式 中文编码格式有哪些
- 简单python爬虫完整代码 python爬虫案例讲解
- 龙将省钱绝招讲解 龙将100级后怎么玩
- 苹果的finder位置讲解 finder在哪打开
- 讲解360路由器安装和设置 360路由器管理密码是什么
- 安卓ui设计尺寸规范讲解 android设计规范尺寸
- 苹果手机免费录音软件讲解 iphone手机来电录音的方法
- 讲解excel表格换行快捷键 excel里面如何换行打字
- 围棋断点解说 围棋断点怎么讲