关于JAVA t中try-catch的用法??????????

一个try-catch块 是不是只能 捕获一个错误呀?
多重的try-catch(一个try中有N个catch)是能捕获多种错误还是捕获多个错误???
具体说一下,书上都把我弄晕了 ,谢谢 了
还有嵌套的try-catch 是怎么样的逻辑(运行顺序)
麻烦各位;了

你所说的一个try-catch只能捕获一个错误是对的,不论后面跟着多少个catch都一样,try-catch语句是这样执行的:首先逐个从上到下执行try块中的java语句,如果没有发生异常,则执行完try块后跳过catch块(不论有多少个catch都跳过)。如果try块中某条语句存在异常,则跳到相对应的catch块中(发生什么异常,就跳到什么catch里,如果没有准确对应的,就跳到父类异常的catch中),执行完该catch块中的语句,然后跳过其它的catch块,接着往下走,明白了么?总之,try-catch只能处理一个异常,这就是为什么后面通常跟finally,要有一个统一的出口。
如果还不明白,你就在环境下用一段代码试试就好了,不要着急,随便找两个异常一试就OK!
比如:
try{
int b=25/0;
Thread.sleep(2000);
}
catch(ArithmeticException e){
System.out.println("除零错误!");
}
catch(InterruptedException e){
System.out.println("延时错误!");
}
上面这个例子就会在屏幕上显示"除零错误!"四个字,因为众所周知,任何数字不能除0,所以25/0是错的,它抛出ArithmeticException(数学异常),则直接跳进第一个catch块内,而没有进入第二个块,尽管Thread.sleep(2000);也有异常。
温馨提示:内容为网友见解,仅供参考
第1个回答  2007-08-29
Catch 后面 不是有个 参数吗?

如果你给个Exception 就是捕获 所有异常啊。。

异常有很多总 有个树型结构图。你看了 就明白了、
第2个回答  2007-08-30
程序所抛出的异常只与try后面众多catch中第一个与合适的想匹配
第3个回答  2007-08-29
能捕获多种错误,每个catch 都能捕获相同种类的多个错误,然后做出相应地处理!
但是就看你catch()括号里面怎么写了
如果是catch(Exception e){。。。。}
那么因为这个Exception 是所有异常类的父类,根据java语言多态的特点,这个catch就可以捕获所有的异常类,包括你自己定义的异常类,哈哈,因为你自己定义的异常类,也必须继承Exception类不是?
建议,把前面的继承和多态的概念再好好理解以下,这块就很容易明白了
第4个回答  2007-08-29
基本同意楼上的观点,但try-catch捕获的是异常Exception而不是错误Error,Exception与Error的区别:
Exceptions
1.可以是 可被控制(checked) 或 不可控制的(unchecked)
2.表示一个由程序员导致的错误
3.应该在应用程序级被处理

Errors
1.总是 不可控制的(unchecked)
2.经常用来用于表示系统错误或低层资源的错误
3.如何可能的话,应该在系统级被捕捉
需要补充的是:
有N个catch时,应当按从子类到基类的顺序捕捉,
无论是否有异常,finally块的代码都会执行。

Java里try catch的简单用法
Java中的try-catch结构用于处理程序运行时可能出现的异常。其基本用法是:1. 当代码在try块中执行,如果遇到异常,程序会立即跳转到相应的catch块进行异常处理。处理完异常后,catch块后的语句会继续执行。如果try块中没有异常,catch块会被跳过。扩展部分:2. 在try-catch-finally结构中,程序流程如下:...

java里trycatch的简单用法
在Java中,try-catch语句用于处理可能会抛出异常的代码块。其基本用法如下:一、基本结构:1. 使用`try`块包裹可能抛出异常的代码。2. 使用`catch`块捕捉并处理异常。二、详细解释:1. try块: 用于包含可能抛出异常的代码。当这些代码执行时,如果发生异常,程序会立即跳转到相应的catch块,而不是终止...

java中try-catch的使用
在Java中,try-catch用于处理可能引发的异常。try语句块是代码集,可能包含可能抛出异常的代码。若try代码块执行时出现异常,异常将被抛出。紧接着的catch语句块捕获并处理这个异常。以下示例展示了try-catch的基本用法。假设代码中有除数为零的操作,这将导致ArithmeticException。通过将此操作包含在try语句块...

java中try 与catch的使用?
try语句: try语句用大括号{}指定了一段代码,该段代码可能会抛弃一个或多个例外。catch语句:catch语句的参数类似于方法的声明,包括一个例外类型和一个例外对象。例外类型必须为Throwable类的子类,它指明了catch语句所处理的例外类型,例外对象则由运行时系统在try所指定的代码块中生成并被捕获,大括号...

java中try和catch的具体作用
try就像一个网,把try{}里面的代码所抛出的异常都网住,然后把异常交给catch{}里面的代码去处理,最后执行finally之中的代码。无论try中代码有没有异常,也无论catch是否将异常捕获到,finally中的代码都一定会被执行。例如:当除数为0时,编译不会报错,如果没有try\/catch的话,程序直接崩溃。用try\/...

在java语言中try-catch的catch中能否再加try--catch?
当然可以,但是不建议这么去做,你可以把你需要捕获异常的代码块放在一个try catch中,捕获你可能出现的所有异常就醒了,比如:try{ }catch(Exception1){ }catch(Exception2){ }。。。这种捕获是顺序捕获,如果觉得麻烦,就捕获所有异常!

jstrycatch用法?
Java中try-catch语句的用法 在Java编程语言中,try-catch语句是一种处理异常的方式。其基本结构包括一个try块和一个或多个catch块。详细解释:1. try块:try块中放置可能引发异常的代码。当这些代码执行时,如果发生了异常,程序会立即跳转到与之对应的catch块,而不会继续执行try块中剩余的代码。2. ...

java中try catch的要注意的规则
try {\/\/ ...} catch (RuntimeException e) {\/\/小异常\/\/处理1} catch (Exception e) {\/\/中异常\/\/处理2} catch (Throwable t) {\/\/大异常\/\/处理3} c.try{ ...}代码块里面的代码尽量的少,避免出现大段大段的代码 d.catch( ) 尽量避免使用万能代码捕获所有的异常,比如 try { \/...

Java里try catch的简单用法
Java里try catch的简单用法:1、try+catch 程序的流程是:运行到try块中,如果有异常抛出,则转到catch块去处理。然后执行catch块后面的语句 扩展部分:1、try+catch+finally 程序的流程是:运行到try块中,如果有异常抛出,则转到catch块,catch块执行完毕后,执行finally块的代码,再执行finally块后面的...

try catch怎么用?
1)java中即使不会发生异常的代码也是可以用try\/catch,catch句不会被认为不可达代码 2)常见需要捕捉的异常 a.IO异常:使用输入输出流读写文件的时候,b.类型转换异常:不确定被转换变量是否满足条件的时候,如下 String str = "a";Integer.parseInt(str);c.DB异常:数据库操作时常伴随有异常的发生 如:...

相似回答