1、try-catch-finally使用
package com.example.test;
import java.util.Scanner;
public class ExceptionMain {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("输入第一个数字:");
int i = sc.nextInt();
System.out.println("输入第二个数字:");
int j = sc.nextInt();
int x = 0;
// 没有做异常的处理则会导致程序中断
// System.out.println("最后的数:" + (i / j));
// Exception处理的结构
try {
// 可能出现异常的代码块
x = i / j;
} catch (ArithmeticException e) {
// 对异常进行处理(使程序不会因为异常而出现中断)
// e.printStackTrace(); // 输出错误信息
System.err.println("程序出现问题,做出默认处理");
x = 0;
} finally {
// 最后都需要进行的步骤
System.out.println("最后的数:" + x);
}
}
}
}
2、throw,throws Exception使用
public class ExceptionMain {
public static void main(String[] args) {
// 检查异常,以防万一。
try {
// 可以try-catch处理异常也可以继续向上抛出异常
getException();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
// 自定义异常,无病呻吟
throw new BaseException("自定义异常");
}
public static void getException() throws FileNotFoundException {
// 向上抛出异常,让上一层处理 throws FileNotFoundException
FileInputStream fis = new FileInputStream("C://");
}
}