java异常处理

在代码运行过程中会遇到很多问题,难以依靠代码避免,如网络是否通常,用户输入格式,读取文件是否存在等。

java中异常主要分为两大类

  1. Error:java虚拟机无法解决的严重问题
  2. Exception:常说的异常,分为编译时异常和运行时异常(RuntimeException)
java 异常体系结构图,如下图所示。

异常处理

java提供抓抛模型
  1. 抛:分为系统自动抛和手动抛两种
  2. 抓:分为try-catch抓和throws

注意点

  1. try-catch后,如果所有异常都被抓住或处理,则后续代码仍照常执行。但是很容易发生有异常每捕获的问题,所有finally产生。
  2. 继承时,子类重载时,抛出的异常应比父类小,不然父类罩不住。
@Test
	public void test1(){
		try{
			System.out.println(10 / 0);
			System.out.println("发生异常,无法执行");
		}catch(ArithmeticException e){
			e.printStackTrace();
		}
		System.out.println("异常捕获后,正常执行");
	}

自定义异常类

public class MyException extends Exception{

	private static final long serialVersionUID = 1893002618672287524L;

	public MyException() {
	}
	
	public MyException(String msg){
		super(msg);
	}

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值