日常Java 2021/10/5
java 异常处理
Throwable中包括Error 和Exception,Exception包括IOException和RuntimeException
抛出异常
1.异常运算条件 ArithmeticException
2.非法索引访问数组 ArrayIndexOutOfBoundsException
3.将一个错误类型的对象存储到数组中 ArrayStoreException
4.向方法传递了一个不合法的参数 IllegalArgumentException
5.程序试图将字符串转换为一种数值类型,但该字符串不能转换为适当格式 NumberFormatException
6.拒绝访问一个类的时候 IllegalAccessException
7.请求的变量不存在 NoSuchFieldException
8.请求的方法不存在 NoSuchMethodException
异常方法
public String getMessage()
返回关于发生的异常的详细信息。这个消息在Throwable类的构造函数中初始化了
public Throwable getCause()
返回一个Throwable对象代表异常原因
public String toString()
使用getMessage()的结果返回类的串级名字
public void printStackTrace()
打印toString()结果和栈层次到System.err,即错误输出流
捕获异常
try
{
//程序代码
}catch(ExceptionName e1)
{
// catch块
}
将以上放在异常可能出现的地方
多重捕获块就是在一个try后面跟多个catch
throw关键字
如果一个方法没有捕获到一个检查性异常,那么该方法必须使用throws关键字来声明,throws关键字放在方法签名的尾部,
也可以使用throw关键字抛出一个异常,无论它是新实例化的还是刚捕获到的
finally关键字
finally关键字用来创建在try 代码块后面执行的代码块
无论是否发生异常,finally 代码块中的代码总会被执行
在finally代码块中,可以运行清理类型等收尾善后性质的语句
finally 代码块出现在catch 代码块最后,语法如下:
try
{//程序代码}
catch(异常类型1 异常的变里名1)
{//程序代码}
catch(异常类型2 异常的变里名2)
{//程序代码}
finally
{//程序代码}
注意事项:
catch 不能独立于try 存在
在try/catch后面添加finally 块并非强制性要求的
try代码后不能既没catch块也没finally 块
try, catch, finally块之间不能添加任何代码
日常Java 2021/10/5的更多相关文章
- 日常Java 2021/10/25
ArrayList存储数字 import java.util.ArrayList; public class Arr_test { public static void main(String[] a ...
- 日常Java 2021/10/21
Java Iterator(迭代器) 如果需要使用iterator类需要从java.util包中引入它 Java Iterator不是一个集合,它是一种访问集合的方法,用于迭代ArrayList和Ha ...
- 日常Java 2021/10/31
泛型类 泛型类的声明和非泛型类的声明类似,除了在类名后面添加了类型参数声明部分.和迈型方法一样,泛型类的类型参数声明部分也包含一个或多个类型参数,参数间用逗号隔开.一个泛型参数,也被称为一个类型变量, ...
- 日常Java 2021/10/30
Java泛型 Java泛型(generics)是JDK5中引入的一个新特性,泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型.泛型的本质是参数化类型,也就是说所操作的数据类型 ...
- 日常Java 2021/10/29
Java Object类是所有类的父类,也就是说Java的所有类都继承了Object,子类可以使用Object的所有方法. Object类位于java.lang 包中,编译时会自动导入,我们创建一个类 ...
- 日常Java 2021/10/28
Java lterator Java lterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList和HashSet等集合.lterator是Java迭代器最简单的 ...
- 日常Java 2021/10/27
java HashMap HashMap是一个散列表,它存储的内客是键值对(key-value)映射.HashMap实现了Map.接口,根据键的HashCode值存储数据,具有很快的访问速度,最多允许 ...
- 日常Java 2021/10/24
Java ArrrayList ArrayList类是一个可以动态修改的数组,没有固定大小的限制,可以在任何时候添加或者删除元素 ArrayList类在java.util包中使用之前需要引用 E:泛型 ...
- 日常Java 2021/10/20
Java提供了一套实现Collection接口的标准集合类 bstractCollection 实现了大部分的集合接口. AbstractList 继承于AbstractCollection并且实现了 ...
- 日常Java 2021/10/19
Java集合框架 Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射. Collection接口又有3种子类型,Li ...
随机推荐
- Linux上的多进程间通信机制
最近项目需要一个类似于Android上广播通信机制,方便多进程间相互通信,可以是一对多,多对一,或者多对多. 大致如下 Linux现有的进程间通信能用的只有 管道 消息队列 信号量(这个还只能算同步机 ...
- 一步一步学ROP之linux_x64篇(蒸米spark)
目录 一步一步学ROP之linux_x64篇(蒸米spark) 0x00 序 0x01 Memory Leak & DynELF - 在不获取目标libc.so的情况下进行ROP攻击 0x02 ...
- mysql 导入sql文件
navicat 工具导入 1.连接数据库后,右键选择导入sql文件 2.选择sql文件,开始导入 4.过程图 5.结果图
- 羽夏看Win系统内核——保护模式篇
写在前面 此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...
- shiro550反序列化分析
拖了很久的shiro分析 漏洞概述 Apache Shiro <= 1.2.4 版本中,加密的用户信息序列化后存储在Cookie的rememberMe字段中,攻击者可以使用Shiro的AES加密 ...
- Part 37 Difference between $scope and $rootScope
In this video we will discuss the difference between $scope and $rootScope. The main difference is t ...
- Part 29 AngularJS intellisense in visual studio
In the previous videos if you have noticed as we were typing the angular code in Script.js file we w ...
- halcon语法讲解
前言 最近换工作,在学习了解halcon工具,每天总结分析今天所学知识,今天是基础语法篇! 1.基本语法 描述 语法 等号 := 不等号 # 注释符 * 字符串赋值 str:='halcon' 等于比 ...
- 教你用SQL进行数据分析
摘要:采用 SQL 作为数据查询和分析的入口是一种数据全栈的思路. 本文分享自华为云社区<如何使用 SQL 对数据进行分析?>,作者:zuozewei . 前言 我们通过 OLTP(联机事 ...
- [hdu6991]Increasing Subsequence
令$f_{i}$表示以$i$为结尾的极长上升子序列个数,则有$f_{i}=\sum_{j<i,a_{j}<a_{i},\forall j<k<i,a_{k}\not\i ...