黑马程序员技术交流社区

标题: run方法为什么不能声明抛出InterruptedException? [打印本页]

作者: 王俊杰    时间: 2013-4-3 21:16
标题: run方法为什么不能声明抛出InterruptedException?
本帖最后由 王俊杰 于 2013-4-3 21:55 编辑

在Thread子类的run方法中写代码,在run方法的声明上抛出InterrupedException,

以便省略Thread.sleep()语句的try...catch处理。

我知道这样做是不可以的,但是我不太明白为什么~~




作者: 程媛媛    时间: 2013-4-3 21:50
因为run方法是继承Thread的类的方法,run方法本身没有抛出异常,所以使用run方法的子类也不能抛出异常。只能try,catch解决。
如果一个父类的方法抛出了异常,子类覆写父类的方法后,抛出的异常只能是父类的异常或者该异常的子类。

作者: 王俊杰    时间: 2013-4-3 21:55
程媛媛 发表于 2013-4-3 21:50
因为run方法是继承Thread的类的方法,run方法本身没有抛出异常,所以使用run方法的子类也不能抛出异常。只 ...

哦~ 原来是这个样子啊
谢谢啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2