日常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 ...
随机推荐
- 0x02
#include<bits/stdc++.h> using namespace std; int n,a[10][10],vis[10],ans,b[10][10]; inline int ...
- 『学了就忘』Linux基础命令 — 18、Linux命令的基本格式
目录 1.命令提示符说明 2.命令的基本格式 (1)举例ls命令 (2)说明ls -l命令的 输出内容 1.命令提示符说明 [root@localhost ~] # []:这是提示符的分隔符号,没有特 ...
- SpringCloud升级之路2020.0.x版-30. FeignClient 实现重试
本系列代码地址:https://github.com/JoJoTec/spring-cloud-parent 需要重试的场景 微服务系统中,会遇到在线发布,一般的发布更新策略是:启动一个新的,启动成功 ...
- google浏览器设置检查元素显示框位置
- idea连接数据库时区错误
错误界面 IDEA连接mysql,地址,用户名,密码,数据库名,全都配置好了,点测试连接,咔!不成功! 界面是这样的, 翻译过来就是:服务器返回无效时区.进入"高级"选项卡,手动设 ...
- storm调用kafka重复消费的问题
1. 实现IBolt接口的bolt需要显式调用collector.ack(); 2. 继承自BaseBasicBlot的bolt, 会帮你自动调用ack的
- centos 添加sudo 权限
https://apple.stackexchange.com/a/82527 visudo user1 ALL=(user2) NOPASSWD: /bin/bash amy ALL=(AL ...
- Python基础(类和实例)
class Point(object): def __init__(self,name,score): self.__name = name self.__score = score def prin ...
- python openpyxl、RESTful、Webservice接口 基础知识
最近 在做接口测试的时候,遇到如下问题:如何通过数据驱动去做批量接口测试呢,我们的测试数据放在哪里去维护?下面整理出相关点,供大家参考 1.如何维护接口测试数据:放在excel文件中,通过python ...
- Python 练习 进程
... """ 创建2个进程, 每一个进程都打出当前的时间和进程的标识,持续打十次. """ import multiprocessing ...