黑马程序员技术交流社区
标题:
多线程里为什么要用到try catch。
[打印本页]
作者:
请备注
时间:
2014-4-3 14:44
标题:
多线程里为什么要用到try catch。
多线程为什么要用到try catch 会出现异常吗? 什么异常?
作者:
491138002
时间:
2014-4-3 16:41
能够捕获的异常都继承自Exception类。
需要以try-catch捕获的是"可检查"异常,所谓"可检查"异常,是指我们应该自行处理的异常。至于处理的手段,要么加以控制(try catch),要么通告(throws)他们有可能产生。通常,应捕捉那些已知如何处理的异常,而通告那些不知如何处理的异常。
java的异常处理机制要求程序员必须捕捉"可检查"异常并提供处理方法,或者向更上层抛出该异常。
try-catch能解决的问题就是处理可能出现的异常
打个比方,如下代码:
public void go(){
File file=new File("d:\\a.txt");
FileInputStream fis=null;
try {
fis=new FileInputStream(file);
} catch (FileNotFoundException ex) {
System.out.println("file not found");
ex.printStackTrace();
}
if(fis!=null){//如果找到了文件
……
}
}
代码作用是打开一个文件,如果找不到文件(即捕获到了FileNotFoundException),就给出提示。而找不到文件这样的异常,就属于可能会出现的、可以处理的异常,以这段代码为例try-catch的作用就在于系统找不到文件时不会导致程序出错终止,而是继续往下运行。多线程为什么用try-catch,其实也是同样的道理。
作者:
小班。
时间:
2014-4-3 21:49
楼上正解~~!
作者:
请备注
时间:
2014-4-3 22:56
491138002 发表于 2014-4-3 16:41
能够捕获的异常都继承自Exception类。
需要以try-catch捕获的是"可检查"异常,所谓"可检查"异常,是指我们应 ...
懂 了 ,3Q
作者:
杨殿生
时间:
2014-4-4 00:13
用到try catch说明你调用函数抛出了异常,比如说Thread类中的sleep()方法,他的参数为毫秒,如果你输入的是负数那肯定是要产生异常的啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2