Java异常类简单笔记

语法

try {
	// ...可能会出现异常的代码
} catch (Exception e1) {
	// ...捕获异常后的处理,try后可以跟多个catch,每个对应一种异常类型
} finally {
	// ...不管怎么样都会执行的代码
}

自定义异常类

自定义异常类通常通过继承Exception类来实现

public class 异常类测试 {

	public static void main(String[] args) {
	
		calculator cal = new calculator();
		double a = 10;
		double b = 0;
		double c = -1;
		try {
			c = cal.div(a, b);
		} catch (myexception mye) {
			System.out.println(mye.getMessage());
		} finally {
			System.out.println("异常类测试完毕");
			System.out.println("c的值为: " + c);
		}

	}

}

class myexception extends Exception {
	//自定义异常类通常写两个构造函数
	public myexception() {
	}

	public myexception(String info) {
		super(info);
	}
}

class calculator {
	//可以抛出异常的方法
	double div(double a, double b) throws myexception {
		if (b == 0)
			throw new myexception("出现异常!除数为0");
		else
			return a / b;
	}
}

还有一种不写在try catch包围中的写法,将异常抛出,由上级方法来捕获(调用main方法的上级进行处理),这样的好处是代码比较简洁,而且出错时会显示出错的行号。

public class 异常类 {

	public static void main(String[] args) throws myexception {
		// TODO Auto-generated method stub
		calculator cal = new calculator();
		double a = 10;
		double b = 0;
		double c = -1;
		c = cal.div(a, b);
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值