概述
Java使用try-catch语句来处理异常,将可能出现的异常操作放在try部分,一旦try部分抛出异常对象,或调用某个可能抛出异常对象的方法,并且该方法抛出了异常对象,那么try部分就会立刻结束执行,转向执行相应的catch部分。
程序可以将发生异常后的处理放在catch部分,try-catch语句可以有多个catch部分,分别处理相应的异常;
try-catch语句的格式如下:
try {
包含可能发生异常的语句
} catch (Exception e){
.....
}catch (Exception e){
.....
}finally{
.....
}
finally部分呢是不管前面的catch语句有没有执行,但是一定会执行finally语句部分;
try-catch语句可以搭配catch部分和finally部分一起使用,一个try-catch语句一定要包含一个或多个catch部分或者finally部分,不能单独出现try部分;
e.printStackTrace()方法介绍
try {
包含可能发生异常的语句
} catch (Exception e){
e.printStackTrace();
}
e.printStackTrace()方法可以打印出错误的堆栈信息,包括错误的描述,错误的类型以及错误出现的地方,举个例子:
import java.util.Scanner;
public class Demo1 {
//输入两位整数,求商
public static void main(String args[]) {
int a,b;
Scanner sc = new Scanner(System.in);
System.out.println("请输入两位整数:");
try {
System.out.println("请输入第1位整数:");
int one = sc.nextInt();
System.out.println("请输入第2位整数:");
int two = sc.nextInt();
System.out.println("两位之商为::"+(one/two) );
}catch(Exception e){
e.printStackTrace();
}
}
}
当我们输入6和的时候,程序正常执行,结果为3
当我们输入6和0的时候,大家都知道,在数学运算中被除数不能为,所以程序会报错,并打印出相关的错误信息,如下图所示
try-catch-finally语句的用法
还是上面那个例子,在上面的例子末尾加上finally语句,并且打印输出“运算结束”
import java.util.Scanner;
public class Demo1 {
//输入两位整数,求商
public static void main(String args[]) {
int a,b;
Scanner sc = new Scanner(System.in);
System.out.println("请输入两位整数:");
try {
System.out.println("请输入第1位整数:");
int one = sc.nextInt();
System.out.println("请输入第2位整数:");
int two = sc.nextInt();
System.out.println("两位之商为::"+(one/two) );
}catch(Exception e){
e.printStackTrace();
}finally {
System.out.println("运算结束");
}
}
}
运行结果为:(不管有多少catch语句,finally语句是一定会被执行的)
当在catch语句中加入System.exit(1);时,如果程序有异常,跳转到执行catch方法,然后执行System.exit(1)语句时,程序会被终止,即不会打印出异常错误信息,也不会执行后面的finally语句,结果如下图。(括号里的1自己设定,不为0即可)
所以System.exit(1)语句的作用是终止程序运行;
最后
以上就是勤恳口红为你收集整理的Java 异常类try-catch语句的全部内容,希望文章能够帮你解决Java 异常类try-catch语句所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复