JAVA的异常处理

文章详细介绍了Java中的异常处理机制,包括如何使用try-catch捕获异常,异常匹配的原则,以及如何通过catch处理多种类型的异常。同时,讨论了当try块中的异常未被捕获时的情况。此外,文章还涉及了自定义异常的创建和使用,通过throw关键字抛出自定义异常,并在调用方法中进行捕获和处理,强调了异常处理在保证程序健壮性方面的重要性。
摘要由CSDN通过智能技术生成

S1.捕捉异常

       A.捕捉异常的格式

看一个例子

输出结果

 

 

S2.针对几种异常的问题反馈

仔细看以下例题

 

 下面是其输出结果:

        当面临try中有多个异常时,我们一般会多个catch与之对应的catch捕获

try会从上往下和catch的进行匹配,若try中遇到了问题,try下面的其他代码不会执行,

直接跳转到对应的catch当中,执行其中的语句体。若没有对应的catch与之匹配,就会交给虚拟机处理。

而写多个catch的意义在于,针对一个异常,要能够将其捕获。

//若我们要捕获多个异常,在这期间存在多个父子关系的话,那父类一定要写在下面

(Exception e)所有的异常都能被Exception接收,

Exception是所有异常的父类

Exception e= new ArrayIndexOutOfBoundsException(上面的例题)

若try中的异常没有被catch捕获,那么try...catch的代码白写了

(原来什么样现在还是什么样),交给虚拟机运行

例题

建立几个一维数组,输出某一个索引

使用CTRL + ALT + T 快捷键将try...catch 包裹该代码块(可能有异常的代码块)

使用getMessage方法返回异常消息的字符串;

输出getMessage方法的内容。

常用的三个Throwable的成员方法

 使用try...catch代码块查询可能异常的代码

使用printStackTrace方法(其底层是使用System.err.println)将错误信息输出在控制台

        输出结果如图所示

 简单拓展

err.与 out.的使用区别

 可以以红色字体打印语句(并非是错误的程序代码)

S3.自定义异常

方法及其步骤:

1.创建自定义异常类;

2.在方法中通过throw关键字抛出异常对象;

3.在抛出的异常方法中处理异常,使用try-catch语句块捕获可能存在的异常

并处理异常。

 自定义一个avg方法,用于求num1和num2的平均值,对于num1和num2的取值,使用if语句

判断是否大于0或者小于100,

将avg方法在主函数中进行调用,使用try...catch捕捉异常

使用 throw 抛出异常,将异常抛给调用avg的对方,使用抛异常,输出自定义异常

(实现在输出异常后不继续输出结果)

kiko_tsuki
关注 关注
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java异常处理的简单练习
09-02
Java异常处理是编程至关重要的一个环节,它用于在程序执行过程处理错误和不寻常的情况。在Java异常处理通过使用try-catch-finally语句块和异常类来进行。以下是对给定代码的详细解释: 1. **异常类的继承**...
Javacatch里面抛出了异常finally里面的事务会提交吗?
DreamSun的博客
06-17 1064
Build并不是对属性赋予默认值,如果想指定默认值可以在字段上使用@Builder.Default注解。如果方法上加了@Transaction注解,catch里面抛出了异常,finally里面的事务会回滚。当然我们在使用@Transaction注解的时候也需要注意事务的粒度,不能图省事直接在入口加一个Transaction注解。
java catch抛出异常_简单了解Java编程抛出异常的方法
weixin_42348880的博客
02-12 8603
任何Java代码都可以抛出异常,如:自己编写的代码、来自Java开发环境包代码,或者Java运行时系统。无论是谁,都可以通过Java的throw语句抛出异常。从方法抛出的任何异常都必须使用throws子句。1. throws抛出异常如果一个方法可能会出现异常,但没有能力处理这种异常,可以在方法声明处用throws子句来声明抛出异常。例如汽车在运行时可能会出现故障,汽车本身没办法处理这个故障,那...
Java基础—重新抛出异常
m0_72882572的博客
12-04 3221
重新抛出异常 在catch块内处理完后,可以重新抛出异常,异常可以是原来的,也可以是新建的,如下所示: try{ //可能触发异常的代码 }catch(NumberFormatException e){ System.out.println("not valid number"); throw new AppException("输入格式不正确", e);
Java异常处理机制
不会飞的小飞侠24
09-22 600
异常处理机制
JAVA出现异常、抛出异常后续代码是否执行
m0_68201836的博客
03-03 2308
出现异常时,try-catch对代码执行的影响、循环时出现异常后续代码是否执行、调用的方法内部出现异常
Java 异常
black mamba
10-08 246
异常分类 所有异常的父接口 Throwable 子接口 Error、Exception Error 系统级别异常, 如 jvm 异常、内存崩溃 Exception ## 运行时异常 RuntimeException 程序逻辑引起的异常 ## 检查异常 CheckedException 编译器需要处理的异常,处理方式是 throws Exception 让虚拟机来处理,或者 try ..catch 集合并发修改异常 java.util.ConcurrentModificationExc
Java异常处理
06-03
### Java异常处理 #### 一、异常的基本概念 在编程领域,异常是指程序在运行过程遇到的问题或错误状态,这些问题通常会导致程序无法按照预期的方式继续执行。在Java语言异常处理是一种重要的机制,用于...
java异常处理
06-08
Java异常处理是编程至关重要的一个环节,它允许程序员优雅地处理程序运行过程可能出现的错误情况,确保程序的稳定性和健壮性。异常处理机制在Java被设计为一种结构化的方法,使得程序在遇到不可预见的问题时,...
Java异常处理学习心得
08-28
Java 异常处理学习心得 Java 异常处理Java 编程语言的一个重要概念,它允许开发者捕获和处理程序的异常,从而确保程序的可靠性和稳定性。在 Java 异常处理机制可以分为两种:可控式异常和运行时异常。 ...
Java异常处理实例分析
09-03
Java异常处理是编程至关重要的一个环节,它帮助开发者优雅地处理程序运行时可能出现的问题,保证程序的稳定性和健壮性。在Java异常处理通过`try-catch-finally`结构来实现,同时还可以使用`throw`关键字来声明...
JAVA——try_catch异常语句
最新发布
weixin_59881338的博客
03-25 1423
1.定义异常类* 2.写继承关系* 3.空参构造* 4.带参构造意义:就是为了让控制台的报错信息更加的见名知意定义://NameFormat:当前异常的名字(姓名格式错误)//Exception:表示当前类是一个异常类//运行时异常:继承RuntimeException类 ----核心:表示由于参数错误而导致的问题//编译时异常:继承Exception类 ------核心:提醒程序员检查本地信息。
java的异常,以及出现异常后的处理【try,catch,finally】
m0_52767002的博客
10-24 3601
我们说了Java不同的异常类,分别表示着某一种具体的异常情况,那么在开发总是有些异常情况是 SUN没有定义好的,例如年龄负数问题,考试成绩负数问题.这些异常在JDK没有定义过,此时我们根据自己业务的异常情况来定义异常类。什么是自定义异常类:在开发根据自己业务的异常情况来定义异常类.自定义一个业务逻辑异常: BusinessException。一个注册异常类。1. 自定义一个编译期异常: 自定义类 并继承于 java.lang.Exception。
Java抛出异常后,后续代码如何执行?
三两肉的博客
10-12 6568
Java抛出异常后,后续代码如何执行?
Controller 层返回值的公共包装类-避免每次都包装一次返回-InitializingBean增强
热门推荐
hu10131013的博客
09-07 10万+
场景:在微服务,一般返回数据都会有个返回码、返回信息和返回消息体,但是每次返回时候调用或者是封装,太过麻烦,有没有什么办法不用每次都封装呢? 答案是有的。 返回值对象 package com.study.auth.comm; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.annotation.JSONField; import com.alibaba.fastjson.serializer.Serialize..
Java 最常见的 208 道面试题:第七模块答案
Java团长的博客
03-24 968
异常74. throw 和 throws 的区别?throws是用来声明一个方法可能抛出的所有异常信息,throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交...
异常_catch处理异常的方式
SAITWATERLaKE的博客
03-17 2332
package TestException; import java.util.*; public class Test01 { public static void main(String[] args) { //实现一个功能,键盘录入两个数,求商 //将可能出现异常的代码放入try代码块里 try { Scanner sc=new Scanner(System.in); System.out.println("请录入第一个数:"); int num1=sc.nextInt(); .
异常机制以及自定义异常
weixin_46649583的博客
09-07 1736
异常分类(异常—>Exception) 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。 例如要打开一个不存在的文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。 运行时异常:运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。 错误ERROR:错误不是异常,而是脱离程序员控制的问题。错误在代码通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。 异常体系结构 Error Erro
java运行时方法异常被catch将会怎么执行?
qq_38075474的博客
05-14 1645
问题描述:在项目,经常碰到异常被捕获,但却疑惑该异常是否会被抛出还是执行,为了弄清情况,这里使用测试类测试了几种自己常见在项目异常捕获的情况。 首先我们弄2个方法,分别为父方法,和子方法,且父方法和子方法都有try..catch的部分,代码如下。 @Test public void father() { try { Syst...
Java异常处理机制详解
"Java异常处理Java编程不可或缺的一部分,旨在确保程序在遇到错误或意外情况时仍能优雅地运行。异常是程序执行期间可能出现的任何断正常流程的事件,如除以零、数组越界或文件未找到等。异常分为编译时异常和...
写文章

热门文章

  • JAVA的三元运算符 4445
  • 15.JAVA的输入输出流 584
  • 检查电池容量及电池设置步骤 460
  • java的字符串和正则表达式 401
  • java的继承、多态、抽象类和接口 265

分类专栏

  • java 1篇

最新评论

  • 熟悉Eclipse开发工具(集成开发环境)

    CSDN-Ada助手: 哇, 你的文章质量真不错,值得学习!不过这么高质量的文章, 还值得进一步提升, 以下的改进点你可以参考下: (1)使用标准目录;(2)文章不宜太短;(3)增加内容的多样性(例如使用标准目录、标题、图片、链接、表格等元素)。

  • 我的第一个JAVA程序

    CSDN-Ada助手: 推荐 Java 技能树:https://edu.csdn.net/skill/java?utm_source=AI_act_java

  • 我的第一个JAVA程序

    CSDN-Ada助手: 恭喜你这篇博客进入【CSDN每天最佳新人】榜单,全部的排名请看 https://bbs.csdn.net/topics/613535382。

大家在看

  • 等保测评对企业信息安全的重要意义
  • C语言编程验证哥德巴赫猜想
  • css布局实现简单计算机页面(前端)详细教程
  • 【2023工业图像异常检测代码复现】SimpleNet
  • Java最全面试题->Java主流框架->SpringBoot面试题 955

最新文章

  • java飞翔的鸟游戏
  • 19.java绘图
  • 16.java的反射与注射
2023年43篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

玻璃钢生产厂家乌海玻璃钢雕塑厂北京玻璃钢字母座椅雕塑焦作园林景观玻璃钢雕塑公司外贸玻璃钢卡通雕塑欣意美玻璃钢雕塑南瓜摆件玻璃钢卡通公仔雕塑供应商汕头玻璃钢雕塑广场摆件商丘仿铜玻璃钢雕塑厂家玻璃钢雕塑彩绘鹿玛雅玻璃钢雕塑浙江装饰商场美陈批发玻璃钢花盆简笔画头像云浮广场玻璃钢雕塑三门峡镜面玻璃钢仿铜雕塑厂家上海玻璃钢雕塑商家商场美陈业态漯河商场美陈特装玻璃钢雕塑用什么原料玻璃钢雕塑厂家武汉南京商场美陈生产公司福建常见商场美陈采购建筑构件玻璃钢雕塑玻璃钢花盆座椅组合龙岩玻璃钢仿真水果雕塑厂家天水彩色玻璃钢雕塑公司汕尾泉州玻璃钢雕塑来宾玻璃钢座椅雕塑制作呼市雕塑玻璃钢 问滁州大型户外玻璃钢雕塑厂家嘉兴玻璃钢海豚雕塑厂家香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化