java添加例外_JAVA例外处理
捕获例外:
Java产生例外对象后,将去寻找能够处理此例外的方法并交之处理,这一过程成为捕获(catch)。若找不到,运行时系统将终止
抛弃例外:
一个方法若不知道如何处理出现的例外,可声明抛弃(throws)
jdk中,每个包都定义了例外类,所有的例外类都直接或间接继承于Throwable类。
java中的例外类可分为两大类:
error
exception
运行时例外
继承于RuntimeException的类都属于运行时例外,如算数(除零),数组越界等,由于例外产生的位置是未知的,java编译器允许程序员在程序 中不对它们作出处理。
非运行时例外
除运行时例外,便是非运行时例外,如FIleNotFindException(文件未找到例外),java编译器要求对这种例外必须作出处理,捕获例外或抛弃例外
例外的处理
捕获例外
通过try-catch-finally语句实现
try:try语句所限定的代码块在执行过程当中可能会产生例外对象并抛弃。
catch:每个try块可以伴随一个或多个catch语句,用于处理try块中所生成的例外事件。
catch语句只需一个形参指明它所能够捕获的例外类型,这个类必须是Throwable的子类,运行时系统通过参数值把被抛弃的例外对象传递给catch 块。
类Throwable提供了getMessage()方法:得到异常的相关信息,printStackTrace()用来跟踪事件发生时执行堆栈的内容。
catch语句的顺序,第一个例外捕获到后,剩下catch不再捕获。故catch安排的顺序应该为从特殊到一般。即先安排子类在安排父类。
finally:为统一的出口,无论有无例外,都会执行。
抛弃例外:
如果一个方法中生成了一个例外,但是这一方法并不确切地知道该如何处理这一异常事件。
此时,这一方法应当声明抛弃例外,使得例外对象可以从调用栈向后传播,直到有合适的方法捕获它为止。
声明抛弃:
声明抛弃例外实在一个方法声明中的throws子句中指明的。
public int read() throws IOException {
...
}
抛出例外:
抛出例外就是产生例外对象的过程。首先生成例外对象,由虚拟机或者某些类的实例生成。通过throw语句实现。
IOException e = new IOException();
throw e;
java添加例外_JAVA例外处理相关推荐
- java添加信息_java – 向异常添加信息
我想向堆栈跟踪/异常添加信息. 基本上我现在有这样的东西,我真的很喜欢: Exception in thread "main" java.lang.ArithmeticExcept ...
- java添加坚挺_Java连载136-两种方式插入数据
一.插入数据 对于数据的增删改查都有两种可选的操作模式,一种是直接使用SQL语句进行增删改查,另一种是通过可更新的结果集对象间接增删改查.首先创建语句对象 Statement stmt = con.c ...
- java 添加附件_java发送邮件(一)--补充添加附件
今天来记录一下如何使用java来发送邮件 背景 之前项目有个需求,当产品出现故障时会把情况上送给服务器,服务器发送邮件将故障产品的位置以及故障信息等告知维修人员.发送邮件的接口不是我负责的,但是有兴趣 ...
- java 添加类_java如何添加类
Java JDK的安装以及CLASSPATH设置系统变量 Java JDK的安装以及CLASSPATH设置系统变量向你介绍如何在Windows条件下进行Java JDK的安装以及CLASSPATH系统 ...
- java 添加等待时间_Java中线程等待特定时间的最有效方法 - java
我知道这个问题here,但是我有一个稍微不同的问题.如果我希望自己通过各种Thread方法(而不是通过实用程序类或Quartz)手动编码某个线程在特定时间的运行,那么最有效(就开销而言)进行编码. 我 ...
- java添加边框_Java如何为边框添加标题?
本示例说明如何创建带有标题的边框.有一个特殊的边界类TitledBorder可以做到这一点.我们可以定义标题的对齐方式,左对齐,居中对齐或右对齐.为此,我们调用该setTitleJustificati ...
- c# 添加防火墙例外端口_C#添加删除防火墙例外(程序、端口)
一. 添加 COM 引用 在引用里,选择 COM 页, 找到 NetFwTypeLib, 确定即可 二. 添加允许通过防火墙的例外程序 using System; using System.Colle ...
- java添加背景图片_Java怎么添加背景图片
首先,导入相关的包: import java.awt.BorderLayout; import java.awt.Container; import javax.swing.ImageIcon; im ...
- java excel 批注_Java 添加、读取和删除 Excel 批注的操作代码
批注是一种富文本注释,常用于为指定的Excel单元格添加提示或附加信息. Free Spire.XLS for Java为开发人员免费提供了在Java应用程序中对Excel文件添加和操作批注的功能. ...
最新文章
- Realm 使用的简单教程
- python 空数组_从零开始学python之numpy
- php输出报错Message: Array to string conversion
- 青龙羊毛——闪电世界(合集篇)
- cv2 画多边形不填充_OpenCV python: 任意多边形填充和凸多边形填充(fillPoly和fillConvexPoly的区别,有图有真相!)...
- “花钱矩阵”下共享单车的出路何在?
- java回调如何理解_如何理解java中的回调
- c#中如何实现拷贝对象
- Kubernetes上的负载均衡详解
- aioserve oracle,oracle进程关不掉的问题??新手问题
- 麦克风阵列树莓派python_使用Python代码进行树莓派上的麦阵列声源定位
- 一个有用的区别IE不同浏览器CSS的标签
- php嗅探链接,教你怎么利用php来嗅探劫持服务器数据
- IP防护等级测试设备(IPX1.2.3.4.5.6.9)
- mvn 命令上传文件到 Maven 仓库
- 字符0、数字0和‘\0’的区别
- MFC应用程序设计(第二版)学习笔记
- Git 从已有分支拉出新分支
- Gitlab CI/CD中的yml遇到的错误分析含解决方法(全)
- CPU构成详细介绍以及工作原理
热门文章
- 又火了一本神书,看小说就能学 JavaScript?
- 苹果mac可引导系统镜像下载
- 大数据培训课程数据清洗案例实操-简单解析版
- 用计算机怎么求锐角三角函数值,用计算器求锐角三角函数值与由锐角三角函数值求锐角.doc...
- 【转自D8】女神的QQ动了,我大喜,点开后默泪了,狠狠的吸了口烟。。。
- 戴尔刀片服务器盘柜型号,戴尔PowerEdge 4220 42U 机架式盘柜
- 朝花夕拾《精通CSS》一、HTML CSS 的基础
- SpringBoot 项目打成 .exe 程序,实战来了,超级详细!
- QPST download crash内存
- Python的海龟绘图库turtle中tracer(False)和speed(0)的区别