Java学习之异常机制

1.异常概念的引入

1.1场景分析

小王每天正常上班路上耗时30分钟,但是总会出现异常的情况,堵车、车祸等

1.2异常概念的提出

使用if-else处理异常情况,会导致代码臃肿、程序员花很大精力去堵漏洞,并且很难考虑所有漏洞,所以提出了异常机制

2.什么是异常

异常是指在程序运行过程中所发生的所有不正常的事件,会终止你正在运行的程序

2.1 什么是异常处理机制

Java编程语言使用异常处理机制为程序提供错误处理的能力

2.2 Java中如何进行异常处理

Java的异常处理是通过5个关键字来实现的:try、catch、finally、throw、throws
1.捕获异常
try:执行可能产生异常的代码
catch:捕获异常
finally:无论是否发生异常,代码总能执行
2.声明异常:
throws:声明方法中要抛出的各种异常
3.抛出异常:
throw:手动抛出异常

3.异常处理机制

3.1 使用try-catch块捕获异常

第一种情况:不产生异常,try块执行完,catch不执行

public void method(){
	try{
		//代码块
	} catch (异常类型 ex){
		//对异常进行处理的代码块
	}
}

第二种情况:出现异常,try块中产生异常代码段2后,代码段3不执行,如果匹配到异常类型,执行代码块4,使用printStackTrace()的堆栈跟踪功能显示程序运行到当前类的执行流程

public void method(){
	try{
		//代码段1
		//产生异常的代码段2
		//代码段3
	} catch (异常类型 ex){
		//对异常进行处理的代码块4
	}
	//代码段5
}

第三种情况:异常类不匹配,中断程序运行,不执行代码块3、代码段4、代码段5,可以匹配异常的父类

public void method(){
	try{
		//代码段1
		//产生异常的代码段2
		//代码段3
	} catch (异常类型 ex){
		//对异常进行处理的代码块4
	}
	//代码段5
}
System.err.print();
e.printStackTrace();
e.getMessage();

3.2 使用try-catch-finally处理异常

finally:是否发生异常都执行,除非退出程序System.exit(1)
存在return的try-catch-finally块:
return退出当前方法,退出当前函数
碰到return,执行finally块

try{
		//代码段1
		//产生异常的代码段2
} catch (异常类型 ex){
	//对异常进行处理的代码块3
	return;	
} finally{
	//代码块
}

4.常见的异常类型

在这里插入图片描述

5.异常的继承结构

在这里插入图片描述
Error表示仅靠程序本身无法恢复的严重错误,无法通过代码进行处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值