当前位置:首页 » 编程语言 » javatry

javatry

发布时间: 2023-05-21 11:26:04

java中try和catch的具体作用

try就像一个网,把try{}里面的代码所抛出的异常都网住,然后把异常交给catch{}里面的代码去处理,最后执行finally之中的代码。

无论try中代码有没有异常,也无论catch是否将异常捕获到,finally中的代码都一定会被执行。

例如:当除数为0时,编译不会报错,如果没有try/catch的话,程序直接崩溃。用try/catch的话,则可以让程序运行下去,并且输出为什么出错。



(1)javatry扩展阅读

java中try....catch的使用原则

1、当代码中可能会遇到的异常需要用try{ }catch{Exception e}来处理,否则导致程序崩溃。

2、不要在for循环里面嵌套try catch子句。

3、尽可能的减少try catch子句的嵌套,会影响性能。

4、同一个try子句中多个catch时,异常处理原则。

当一个try块中包含众多语句,可能抛出多种不同的异常,只有通过多个catch块来捕获不同的异常。而如果两个异常存在继承关系,应该把子类异常放在父类异常的前面来捕获,或者把最小范围异常放在最前面 ,范围大的放在后面。

因为是按照catch块从上往下匹配,当它匹配某一个catch块的时候,就直接进入到这个catch块里面去了,后面在再有catch块的话,它不做任何处理,直接跳过去,全部忽略掉。

如果有finally的话进入到finally里面继续执行。Exception这个异常的根类一定要刚在最后一个catch里面,如果放在前面或者中间,任何异常都会和Exception匹配的,就会报已捕获到异常的错误。

㈡ java里try是干什么的

“try-catch-finally语句块”用来捕获并处理异常。

你可能会想,如果你写程序的时候有意的去避免异常,那么“try-catch-finally语句块”不就没什么用了吗?可是,你的程序不是给你自己使用的吧?如果你要求用户输入1个数字,而且你的程序也明确提示了用户需要输入的是数字,但用户就是输入了“英文字母”,那么,你的程序没有“try-catch-finally语句块”一定会直接崩溃的。而如果用了“try-catch-finally语句块”,并将这个异常处理为“再次提醒用户需要输入的是数字,并再次允许用户重新输入”,那你的程序就不会半途挂掉。

【示例】

//用"try-catch"强制用户必须输入一个数字!
importjava.util.Scanner;
publicclassTest2{
publicstaticvoidmain(Stringargs[]){
doubled=0;
booleanbadInput=true;
Scannerinput;
while(badInput){
System.out.println("请输入1个数字:");
input=newScanner(System.in);
try{
d=input.nextDouble();
}catch(Exceptione){
System.out.println("您输入的不是数字!");
continue;
}
badInput=false;
}
System.out.println("您输入的是:"+d);
}
}

㈢ java:try{} catch{}是什么意思

这是一个提示出现异常的代码。try{}catch(Exception e){}

try{}里边代指出现异常的代码。catch(Exception e)中的e就是异常各类,如果你能确定那种异常,就可以用那种异常代码代替这个e。

而后边{}就是你处理异常的方法,你可以打出异常,或者是输出提示出错了,很灵活。

有时候还会有一个finally{}在最后,这个是一定会处理的代码,不会因为异常的出现会终止。

(3)javatry扩展阅读:

try 是JAVA中常用到的关键命令。用于try..catch..finally块,进行异常捕获。

try是try..catch..finally块中用来引导第一部分的关键字,用于声明需要捕获指定语句块的异常。

完整的使用方法是:

try {

语句块1

} catch (<? extends Throwable> e) {

语句块2.1

} catch (<? extends Throwable> e) {

语句块2.2

} catch (<? extends Throwable> e) {

语句块2.3

...

} finally {

语句块3

}

catch可以出现0次、1次或多次,finally可以出现0次或1次,但是catch和finally不能同时不出现。

catch用法:

当语句块1中抛出异常时,立即离开语句块1,之后会在所有catch中依次进行类名比对。如果抛出异常和catch声明的异常类名一致,或抛出异常是catch声明的异常的子类,则会进入该catch的语句块(成为异常的捕获),在catch的语句块中可以将异常输出到命令行或引导用户进行问题反馈。

如果任何一个catch都不匹配,会像上层调用抛出这一异常(在此之前会进入finally语句块,详情参考下面的finally用法)。

finally用法:

在语句块1、语句块2中,任何试图离开try..catch..finally块的语句都会导致语句块3被执行,如return throw break continue。在finally的语句块中可以进行内存回收等工作。

需要注意的是,如果导致离开的不是语句造成的,而是断电、内存不足等计算机故障,finally语句块不会被执行。

例子:

public class Test {

public static void main(String[] args) {

int i = 10;

try {

System.out.println(i / 0);

}catch(ArithmeticException ame) {

ame.printStackTrace();

} finally {

System.out.println("byebye");

}

}

}

㈣ JAVA中try catch捕获异常的问题

在java中添加捕获异常代码时,需要把认为可能会出现异常的代码包括在try语句块内,处理异常的代码包括在catch语句内。在程序执行时,如果try语句内的代码出现错误,try会创建异常对象并抛出,catch捕获异常对象,则catch语句块内的代码将会执行,这样就可以处理异常错误了。

void fun1()

{

throw int();//抛出错误信息

}

int main()

{

try

{

fun1();

}

catch (int &e)//捕获错误信息

{

cout << "Exception" << endl;

cout << e << endl;

}

return 0;

}

(4)javatry扩展阅读

try是try..catch..finally块中用来引导第一部分的关键字,用于声明需要捕获指定语句块的异常

完整的使用方法是

try {

语句块1

} catch (<? extends Throwable> e) {

语句块2.1

} catch (<? extends Throwable> e) {

语句块2.2

} catch (<? extends Throwable> e) {

语句块2.3

...

} finally {

语句块3

}

热点内容
安卓咪咕音乐怎么录制视频 发布:2024-05-19 07:56:06 浏览:837
如何搞出超大声的听声辨位安卓版 发布:2024-05-19 07:46:21 浏览:926
linux安全模式 发布:2024-05-19 07:27:25 浏览:175
为什么安卓手机安装不了cpk 发布:2024-05-19 07:22:21 浏览:312
pythonempty 发布:2024-05-19 07:15:16 浏览:928
路由器虚拟服务器搭建 发布:2024-05-19 07:15:15 浏览:998
方舟编译器何时推送 发布:2024-05-19 07:15:10 浏览:597
魔兽世界自动钓鱼脚本 发布:2024-05-19 06:43:07 浏览:495
cbs加密 发布:2024-05-19 06:29:56 浏览:202
ssis存储过程 发布:2024-05-19 06:21:31 浏览:632