栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础-异常

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础-异常

文章目录
  • 前言
  • 一、异常是什么?
  • 二、通过Throwable对异常及其子类对异常进行描述。
  • 三、异常处理的机制
  • 四、异常的五个关键字
  • 五、Java支持多种Catch结构
  • 六、当try-catch块中使用return语句时,执行的状态。
  • 七、throw和throws的区别
  • 八、自定义异常
  • 九、异常链
  • 总结


前言

本文主要介绍Java中异常的相关知识,包括异常分类,使用等介绍。


一、异常是什么?

简单来说,java异常是程序上的错误的一种,Java中的错误一种是编译错误,另外一种是运行的错误。
异常就是在程序运行的过程中,意外发生的情况,背离程序本身意图的表现,都可以理解为异常。

二、通过Throwable对异常及其子类对异常进行描述。

Throwable分为异常Exception和Error,而异常分为可检查异常和非检查异常,检查异常在编码编译过程中,编译器要求必须处理的异常。

三、异常处理的机制

异常处理的机制分为两种,一种是抛出异常,第二种是捕获异常。抛出异常是指本身不对异常进行处理,而是将异常抛出让调用方处理。而捕获异常是本身捕捉到异常,然后针对异常做一些操作。
Java规定,针对于可查异常必须捕获或者申明及抛出异常。

四、异常的五个关键字

try、catch、finally、throw(抛出异常)throws(申明异常)

五、Java支持多种Catch结构 六、当try-catch块中使用return语句时,执行的状态。
try{
xxx
	System.out.println("try 块");
	return "0";
}catch(Exception e){
xxx
	System.out.println("catch块");
	return "1";
}finally{
xxx
	System.out.println("finally块");
	return "2";
}

无异常情况结果:输出try块,finally块,返回2;
有异常情况:输出catch块,finally块,返回2;
当存在finally时,执行完finally才会执行return语句。

七、throw和throws的区别

throw是抛出异常,throws是申明异常,例如:

public int method() throws Exception{
xxx
throw new  Exception();
}

当方法抛出异常列表中的异常时,方法不处理异常而是抛给调用该方法的方法处理异常。
通过throws抛出异常时,针对可能出现的异常情况,解决方案:
1.throws后接多个异常类型,用逗号隔开。
2.throws后接exception。
当Exception含有检查异常时,编译器会提示异常,当使用throw抛出异常时,只能抛出throwable及其子类对象。
而抛出异常时,有两种解决方案,一种是自己解决掉,另外一种是继续抛出。

八、自定义异常

继承Exception类并写好构造方法,例如:

public class HotelAgeException extends Exception{
	public HotelAgeException() {
		super("18岁以下或者80岁以上的人员需要有亲友陪同方可入住");
	}
}

九、异常链

异常链就是指多个方法顺序调用,接受异常抛出另外一个异常的状态,例如:

void method1() throws AExpection(){
throw new AException;}

void method2() throws BExpection(){
try{
	method1();
}catch(AExpection a){
throw new BException()
}finally{
}

void method3() throws CExpection(){
try{
	method2();
}catch(BExpection a){
throw new CException()
}finally{
}

最终只会输出C异常,A,B异常会丢失,解决方法是采用initCause()方法或者是申明异常时增加e参数。

总结

本篇学习了Java的异常相关的知识,包括使用异常,异常分类,如何操作,如何自定义异常等。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/851323.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号