【Java】如何使用Eclipse中的调试器

只要有一点编程基础的人都程序出错或者得不到我们想要的结果的时候,我们要进行调试,但是不知道有多少人还是与我一样,喜好在某些地方用System.out.println();去打印某些变量来进行观测,C语言则喜欢用printf,C++则是cout,这种方法用多了,永远不知道调试器到底怎么使用了。其实,Eclipse中的调试器很简单,非常容易使用。而且,对于打印某些变量的方法,在一些大型的程序,图形编程界面、WEB编程,你就开始懵了。程序为何出错还没想出来,又要开始想怎么打印变量。简直烦死了。抓狂

为了讲解如何用Eclipse中调试器去调试程序,故意设计这样的一个很简单的错误程序:

class Debug {
	public void ArrayIndexOutOfBoundsException() {
		int[] TestArr = new int[10];
		for (int i = 0; i < TestArr.length; i++) {
			TestArr[i] = i;
		}
		for (int i = 0; i < TestArr.length + 1; i++) {
			System.out.print(TestArr[i] + ",");
		}
	}
}

public class JavaDebugTest {
	public static void main(String args[]) {
		new Debug().ArrayIndexOutOfBoundsException();
	}
}

这段代码没有任何的语法错误,但是运行起来却是这样结果:


几乎所有人都知道,这是数组越界错误,我再打印的时候,本来只有10个单位的数组,却要读取其第11位的东西,这是明显会发生错误的。

但是,实际在我们编程的时候,要解决的程序不像这里这么简单,而且如果出错,还会一次性地吐出大量无关的异常,让人很难找到出错的原因。

而且,这个问题如果要你用打印变量的方法去检测错误,估计你搞半天还没搞出来。

此时,我们就要借助Eclipse中的调试器。

关键是怎么用呢?总是见高手在啪啪啪就发现错误的原因,但自己却只有羡慕……

首先,在运行结果找到可能出错的地方,不是自己写的Java文件、Java包就不要管了,你引入那些jar包都是人家写好的,怎么可能出错,即使是出错,都是你写的程序搞到人家的jar报错:


然后,如图点击调试来运行这个程序:


之后进入到如下界面,也就是Eclipse中的调试器,我们必须要会用、会看,利用这个调试器改出我们自己想要的程序!

当你使用调试运行的时候,你的程序会迅速执行到你设置的第一个断点,之后,如下图,请利用好F6与F7/F8,配合右上方的内存变量查看器,好好思考你写不好程序的原因


你每点一下F6,内存变量查看器里面变化了的变量会高亮显示:


调试的过程中,也请注意一下下方控制台的输出,对于循环体,请注意你是在第几次循环中出错的,而对于条件体,请注意判断条件,也就是if里面的东西,与当前内存里面的变量是否吻合等等各类的编程技巧、调试技巧,这里就不用说了,估计还有比我更NB的大神。

在调试的过程中,你可以直接在代码面板那里改代码。或者等整个程序调试完毕了,按右上角的Java切回原来写代码的界面修改:



  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值