java异常是什么及其捕捉与处理(1)(超详细的哦~~~)

棒棒的

文章目录

>>正文

  • 一 exception异常是什么?
  • 二 异常捕捉

    1.引入代码

  • 总结


前言

各位宝贝,本文主要介绍Java里的异常,希望能对各位起绵薄之力


提示:以下是本篇文章正文内容,下面案例可供参考

一、exception异常是什么?

异常即程序运行中的不正常的会导致程序终止的情况,如下图所示

可以看出,下标值越界了,但运行前没有报错

 即为普通的数组下标值越界异常。

二、异常捕捉

1.引入代码

我们在运行程序时,总会遇到各种各样的问题,如用户不按提示输入值,这会导致异常,而程序员需要提前预判到这种异常的出现,并为此提前做出相应的处理。

也就是说,我们要把可能出现异常的代码尝试(try)一下,会不会出现异常,如果真的出现异常,我们要捉住(catch)它,并给出相应处理,这就是Java捕捉异常的机制try-catch语句

代码如下

import java.util.Scanner;

public class Arrayindex {

	public static void main(String[] args) {
		// TODO Auto-generated method stub

		int index;
		Scanner in=new Scanner(System.in);
		int a[]=new int[10];
		index=in.nextInt();
		try {
			//把有可能异常的代码放进try语句里
			a[index]=10;//如果index的值超过了数组边界,就会产生越界异常
			//注意哦,如果产生异常,就不会执行try语句里的剩下的内容了,而是转到catch里看一下满足什么异常
			//如,如果index取10,就不会输出helloworld,而是输出数组越界异常
			System.out.println("helloworld");
			
		} catch (ArrayIndexOutOfBoundsException e) {
			
			System.out.println("数组越界异常");//发现异常,执行catch里的处理方法哦
		}
		
		System.out.println("仍然执行");//try-catch后面的语句并没有因为有异常而停止执行
		//但若是没有try-catch,发生异常后程序立即停止,可以试试哦
	}

}

注意哦,如果产生异常,就不会执行try语句里的剩下的内容了,而是转到catch里看一下满足什么异常,并执行catch里面的语句。

try语句后面可以跟多个catch语句,哪个异常与对应catch语句捕捉的一样,就转到相应catch语句里处理哦,代码如下 

public class 异常2 {
	public static void f()
	{
		int[] a=new int[10];
		a[10]=10;
		System.out.println("hello");//hello并不输出,可见第七行异常后
		//f()函数剩下的内容就不执行了
	}
	
	public static void main(String[] args) {
		
		try {
			f();
			
		} catch (NullPointerException e) {
			
			System.out.println("空指针异常");
		}catch (ArrayIndexOutOfBoundsException e) {
			System.out.println("数组越界异常");//是什么异常被catch捕获,就执行该catch里的语句
		}
		
		System.out.println("仍然执行");
		
	}
	

}

总结


以上就是今天要讲的内容,本文仅仅简单介绍了exception的一点点发现,明天继续吧,加油,今天的风真的好温柔,许是吹过那位爱人的心吧

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

76博ding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值