运行时异常例子:
当num2为0时,则会报错,后面的程序不再进行
使用try关键字,使程序在发生特定异常时还会继续执行
try关键字
1.算术异常(运行时异常)
int num,num1,num2;
Scanner taylor=new Scanner(System.in);
System.out.print("num1:");
num1=taylor.nextInt();//被除数
System.out.print("num2:");
num2=taylor.nextInt();//除数
try {
num=num1/num2;
//可能出现异常的代码块
}catch(ArithmeticException a/*异常类型e*/) {
//一旦匹配该异常类型,则进入此大括号进行处理,程序不中断
//对异常进行处理
System.out.println("除数为0,无法计算");
}
System.out.println(num1+"----"+num2);
//后面的代码继续执行
2.数组越界异常(运行时异常)
public static void main(String[] args) {
demo();
}
//数组越界异常
public static void demo() {
int [] num=new int[] {1,2,3};
try {
System.out.println(num[3]);
}catch(ArrayIndexOutOfBoundsException a) {
System.out.println(num[2]);
// a.printStackTrace();//输出原始的错误信息
}
System.out.println("Test");
}
3.空指针异常(运行时异常)
public static void main(String args[]){
demo();
}
public static void demo() {
int [] nums=new int[] {1,2,3};
nums=null;//把空间清空
try {
System.out.println(nums[1]);
}catch(NullPointerException a) {
System.out.println("空指针异常啦!");
a.printStackTrace();//输出原始的错误信息
}
System.out.println("测试");
}