Java基础入门之异常的那些事儿

Wesley13
• 阅读 344

点击上方“ Java进阶学习交流 ”,进行关注

后台回复“Java”即可获赠Java学习资料

莫买沃洲山,时人已知处。

前言

大家好,我是Java进阶者。这篇文章我们主要介绍Java基础入门之try...catch、finally、throws关键字和抛出异常知识,一起来学习下吧!

一、try...catch和finally

(一)使用多重catch 语句

1.有些时候,当单个代码段可能会引起多个异常,为了处理这种状况,可以使用两个或多个catch子句,每个子句捕获一种类型的异常。

2.使用多重catch语句格式

try                             

(二)finally关键字

1.如果我们希望有些语句无论程序是否发生异常,都要执行我们就可以使用try...catch后面加个finally关键字。

2.finally关键字的使用语法格式

try 

2.try...catch后面加个finally关键字的使用例子

public class p35 {

运行的结果是:

Java基础入门之异常的那些事儿

从上面代码中,try的大括号里面是可能发生异常代码块,catch是捕获并处理异常,在catch代码块中加了一个return语句,主要是结束当前语句。我们发现System.out.println("程序继续向下执行")这个输出语句不被执行,然而finally关键字代码块中是被执行了,没有被return语句影响到,不管这个程序是否发生异常这个finally代码块的语句都会被执行。

二、throws关键字

1.使用throws关键字的子句标记方法的声明,表示这个方法不对产生的异常进行处理,而是向调用它的方法抛出这个异常。

2.thorws关键字抛出异常的语法格式:

[修饰符]  返回类型 方法名(参数1,参数2,……)throws 异常列表

3.thorws关键字使用例子

public class p35 {

运行的结果是:

Java基础入门之异常的那些事儿

从上面代码中,在main()方法后面加throws关键字使用抛出异常,它的最终是由虚拟机来处理这个异常的。在main()方法中调用div()方法,定义实现方法两个整数相除,使用throws关键字声明抛出异常。除了已定义的异常,开发人员还可以根据情况自定义异常类,定义时只要让该类继承Exception。

三、抛出异常

1.使用throw关键字用在方法中声明抛出异常的实例对象。

2.抛出异常首先要产生异常对象,手动抛出的异常对象,一定是Throwable或其子类的实例。它的语法语句如下:

throw 异常对象;

3.所有的异常类都有两个构造方法,以Exception类为例,生成Exception类的异常对象可以使用下面两个构造方法之一:

public Exception( );

四、总结


本文主要介绍了try...catch和finally、throws关键字、抛出异常。

try...catch和finally介绍了使用多重catch语句格式、finally关键字的使用语法格式,通过try...catch后面加个finally关键字例子帮助理解是如何使用的。

使用throws关键字的子句标记方法的声明,表示这个方法不对产生的异常进行处理,而是向调用它的方法抛出这个异常。抛出异常使用throw关键字用在方法中声明抛出异常的实例对象。

我是Java进阶者,希望大家通过本文的学习,对你有所帮助!欢迎大家加我微信,有问题可以随时帮大家解决噢,交个朋友也好哇~

**********---**--****-------------- End **********---**--****--------------

Java基础入门之异常的那些事儿

往期精彩文章推荐:

Java基础入门之异常的那些事儿

欢迎大家点赞,留言,转发,转载,****感谢大家的相伴与支持

想加入Java学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

本文分享自微信公众号 - Java进阶学习交流(java_xianghong)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
技术小男生 技术小男生
4个月前
linux环境jdk环境变量配置
1:编辑系统配置文件vi/etc/profile2:按字母键i进入编辑模式,在最底部添加内容:JAVAHOME/opt/jdk1.8.0152CLASSPATH.:$JAVAHOME/lib/dt.jar:$JAVAHOME/lib/tools.jarPATH$JAVAHOME/bin:$PATH3:生效配置
光头强的博客 光头强的博客
4个月前
Java面向对象试题
1、请创建一个Animal动物类,要求有方法eat()方法,方法输出一条语句“吃东西”。创建一个接口A,接口里有一个抽象方法fly()。创建一个Bird类继承Animal类并实现接口A里的方法输出一条有语句“鸟儿飞翔”,重写eat()方法输出一条语句“鸟儿吃虫”。在Test类中向上转型创建b对象,调用eat方法。然后向下转型调用eat()方
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
小森森 小森森
4个月前
校园表白墙微信小程序V1.0 SayLove -基于微信云开发-一键快速搭建,开箱即用
后续会继续更新,敬请期待2.0全新版本欢迎添加左边的微信一起探讨!项目地址:(https://www.aliyun.com/activity/daily/bestoffer?userCodesskuuw5n)\2.Bug修复更新日历2.情侣脸功能大家不要使用了,现在阿里云的接口已经要收费了(土豪请随意),\\和注意
Wesley13 Wesley13
1年前
Java基础入门之Object类、匿名内部类、构造方法的继承解析
点击上方“Java进阶学习交流”,进行关注后台回复“Java”即可获赠Java学习资料今日鸡汤古调虽自爱,今人多不弹。前言大家好,我是Java进阶者。这篇文章我们主要介绍Java基础中的Object类、匿名内部类、构造方法的继承知识,一起来学习下吧!一、Object类
Wesley13 Wesley13
1年前
Java爬虫之JSoup使用教程
title:Java爬虫之JSoup使用教程date:201812248:00:000800update:201812248:00:000800author:mecover:https://imgblog.csdnimg.cn/20181224144920712(https://www.oschin
Wesley13 Wesley13
1年前
Java基础入门之多态和对象类型转换
点击上方“Java进阶学习交流”,进行关注后台回复“Java”即可获赠Java学习资料今日鸡汤人随沙岸向江村,余亦乘舟归鹿门。前面几篇文章用Java带大家一起了解Java的部分基础知识,感兴趣的小伙伴们可以去学习下了,一篇文章带你了解Java类的设计和封装及类成员的访问控制(https://www.osc
Wesley13 Wesley13
1年前
Java基础入门篇——方法和重载
点击上方“Java进阶学习交流”,进行关注后台回复“Java”即可获赠Java学习资料今日鸡汤何日平胡虏,良人罢远征。前面几篇文章用Java带大家一起了解了几个游戏小项目,感兴趣的小伙伴可以点击文章观摩下,手把手教你用Java打造一款简单故事书(上篇)(https://www.oschina.net/ac
Wesley13 Wesley13
1年前
Java基础入门之自定义异常、形参个数可变的方法、水仙花数
点击上方“Java进阶学习交流”,进行关注后台回复“Java”即可获赠Java学习资料今日鸡汤葡萄美酒夜光杯,欲饮琵琶马上催。前言大家好,我是Java进阶者。这篇文章我们主要介绍Java基础入门之自定义异常、形参个数可变的方法、水仙花数知识,一起来学习下吧!一、自定义异常
Stella981 Stella981
1年前
Docker 部署SpringBoot项目不香吗?
  公众号改版后文章乱序推荐,希望你可以点击上方“Java进阶架构师”,点击右上角,将我们设为★“星标”!这样才不会错过每日进阶架构文章呀。  !(http://dingyue.ws.126.net/2020/0920/b00fbfc7j00qgy5xy002kd200qo00hsg00it00cj.jpg)  2