当前位置: 首页 > news >正文

认识异常及异常处理机制之try-catch

异常类

什么是异常?就像人会犯错一样,程序在运行的过程中也会犯错。程序中的错误有两类,一类称为Error(错误),另一类称为Exception(异常)。Error类和Exception类都为Throwable的子类。狭义上的异常指的是Exception,广义上的异常指的是Throwable在这里插入图片描述

认识异常

异常(Exception):异常指的是程序运行时发生的不正常事件,它能够被程序处理,保证程序继续运行下去。像除数为0、文件没有找到、输入的数字格式不对等都是常见的异常。
错误(Error):错误指程序没法处理的事件,例如内存泄漏。发生错误后,一般虚拟机会选择终止程序运行,程序员需要修改代码才能解决相关错误。
在这里插入图片描述运行时异常: 这些异常在编译期不检测,程序中可以选择处理,也可以不处理。如果不处理运行时会中断,但是编译没问题。
非运行时异常:是必须进行处理的异常,如果不处理,将发生编译期错误。
在这里插入图片描述

常见的异常

  1. ArithmeticException算术异常
    发生前提:整数除以0时发生

在这里插入图片描述
运行结果:在这里插入图片描述
2. IndexOutOfBoundsException:索引越界异常
发生前提:当访问字符串中的字符超过了其长度时或者访问数组中的元素超过了其长度时。
在这里插入图片描述
在这里插入图片描述3. NumberFormatException-数字格式异常
发生前提:当把一个字符串转换成数字时,字符串内容不是纯数字时发生。
在这里插入图片描述4.NullPointerException-空指针异常
发生前提:当对一个空对象(即没有初始化),调用属性或方法时。
在这里插入图片描述5.非运行时异常
FileNotFoundException:文件未找到异常。
在这里插入图片描述

异常处理机制

1.Java使用try-catch语句来处理异常,将可能出现的异常操作放在try-catch语句的try部分,将发生异常后的处理放在catch部分。

try {
可能发生异常的语句
}
catch(异常类 异常对象) {
异常处理代码
}
在这里插入图片描述
2.异常对象可以调用如下方法得到或输出有关异常的信息:
public String getMessage();
public String toString();
public void printStackTrace();

在这里插入图片描述3.异常处理的三种情况

1.发生异常,异常被捕获(处理)。
2.发生异常,异常没有被捕获。
3.没有发生异常。
(1)发生异常被捕获处理
在这里插入图片描述
(2)发生异常没有被捕获处理

在这里插入图片描述
(3)没有发生异常

在这里插入图片描述

http://www.lryc.cn/news/278818.html

相关文章:

  • html学习之路:简述html文档头部 <meta> 的 http-equiv 属性
  • 逆矩阵计算
  • 《豫鄂烽火燎原大小焕岭》:一部穿越时空的历史史诗
  • 浅研究下 DHCP 和 chrony
  • 【算法】动态中位数(对顶堆)
  • mysql服务多实例运行
  • 「HDLBits题解」Module fadd
  • 微软等开源评估ChatGPT、Phi、Llma等,统一测试平台
  • DDNS-GO配置使用教程
  • flex弹性盒子常用的布局属性详解
  • 2023年Gartner® DevOps平台魔力象限发布,Atlassian被评为“领导者”
  • kylin集群使用nginx反向代理
  • 小红书搜索团队提出全新框架:验证负样本对大模型蒸馏的价值
  • 汽车销售领域相关专业术语
  • 代币合约 ERC20 Token接口
  • 判断回文字符串—C语言
  • 如何在Docker本地搭建流程图绘制神器draw.io并实现公网远程访问
  • Web前端篇——el-timeline+el-scrollbar时间轴数据刷新后自动显示滚动条
  • Flutter 监听前台和后台切换的状态
  • 图解Kubernetes的服务(Service)
  • facebook广告素材制作要注意哪些
  • Android 应用流量监控实践
  • 并发前置知识一:线程基础
  • 计算机网络 物理层
  • 浅谈轻量级Kubernetes—K3s
  • Web APIs知识点讲解
  • Python商业数据挖掘实战——爬取网页并将其转为Markdown
  • 初识 Elasticsearch 应用知识,一文读懂 Elasticsearch 知识文集(1)
  • StampedLock详解
  • Linux中DCHP与时间同步