捕获异常:
try:执行可能产生异常的代码
catch:捕获异常
finally:无论是否发生异常,代码总能执行
1.语法错误 (不能处理此类异常)
2.运行时异常
3.系统异常(Error ApplicationException)(不处理此类异常)
package cn.zzx.error;
import java.util.Scanner;
public class Anomaly {
public static void main(String[] args) {
System.out.println("******************");
System.out.println("1.喜欢\t2.一般\t3.不喜欢");
System.out.println("******************");
boolean error = false; //开关按钮
int input = 0; //初始值input
do{ //直到型循环do怎样都执行一次
/**
* 捕获异常执行的代码
*/
try{
Scanner scan = new Scanner(System.in);
input = scan.nextInt();
error = true ; //迭代器
} //执行do循环一次完成
/**
* 捕获异常输出
*/
catch(Exception e){
// e.printStackTrace(); //打印异常
// System.out.println(e.getMessage()); //打印异常
System.out.println("出错了,请输入1-3之间的整数:");
}
}while(!error); //判断是否循环
switch(input){
case 1:
System.out.println("喜欢");
break;
case 2:
System.out.println("一般");
break;
case 3:
System.out.println("不喜欢");
}
}
}