一、原因
工作以来,发现最大的难题不是写代码,而是找代码中的错误。大多数程序猿写的代码都不可能是最终版,都需要不断的调试,更正。所以学习Debug在我看来是仅次于编程的一个能力,可惜的是无论是在学校还是刚进公司,都没有一个对于如何调试代码的教学过程。(可能是公司觉得学校的老师已经教过了,而老师觉得基础更重要,在学校学的大部分是理论,除了实验室的大神,最终导致大部分的学生在debug调试代码方面灯下黑,只会用system.out.println();调试)。痛定思痛,我决定专门用一天的时间来学习如何调试代码,来加强自己这方面的能力。
二、功能窗口
Debug窗口 | 主要显示当前线程方法调用栈,以及代码行数(有调试信息的代码) |
断点Breakpoints窗口 | 断点列表窗口,可以方便增加断点,设置断点条件,删除断点等 |
变量Variables窗口 | 显示当前方法的本地变量,非static方法,包含this应用,可以修改变量值 |
表达式expression窗口 | 写上自己需要观察的数据的表达式,或者修改变量值 |
搜索结果Search窗口 | 结合快捷键可以查看变量、方法等在工作空间、项目、工作集中被引用或定义的代码位置(Ctrl + Shift + G) |
代码编辑窗口 | 编辑代码的窗口 |
输出Console窗口 | 日志等输出内容,调试时,可以将关注的组件级别设置低一点,以便获得更多的输出信息 |
大纲Outline窗口 | 查看当前类的大纲,包含方法,变量等 |
Display窗口 | 可以在display中执行代码块,输出内容等 |
类型层级Type hierarchy窗口 | 查看当前所在类的继承层次,包括实现接口,类继承层次 |
方法调用关系Call hierarchy窗口 | 查看当前方法被那些方法调用,调用方法在哪些类中、第几行,可以直接打开对应的方法 |
写一个99乘法表来学习使用Debug调试
写到这里,通过一个简单的代码的练习,我自己对debug已经有了初步的了解,更加熟练的学习需要通过工作中的练习去锻炼。关于debug方面更多的知识,推荐大家去以下博客学习。
参考博客:http://blog.csdn.net/u010075335/article/details/51222493