什么样的问题需要用try catch语句执行

来源:百度知道 编辑:UC知道 时间:2024/05/22 18:12:55
一直对try-catch解决什么问题不太了解,能够捕获的异常如除零异常都是事先定义好的吗?try catch都用来解决什么样了问题,我不太理解多线程为什么用try-catch,鸟儿,麻烦高手指点一下

能够捕获的异常都继承自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,其实也是同样的道理。
还有一类是"不可检查"异常,这类异常通常是不可预知的,或者是程序员无法处理,这类异常程序员无需考虑,它们要么在我们的控制之外(Error,比如java虚拟机出错这样的异常),要么是我们首先就不该允许的情况(RuntimeException,LZ所说的除零异常)。

其实很简单 以后你就知道了

如果什么都不写的话