Java SE异常、泛型、注解和反射

这篇文章只是为了复习做的记录,还会有其他的文章
一部分来自JavaGuide
大家可以关注😁😁😁😁



异常

在这里插入图片描述

Exception和Error有什么区别

Throwable是所有错误和异常的父类

  • Exception:程序本身可以处理的异常,可以通过catch来进行捕获。Exception又可以分为Checked Exception(受检异常,必须处理)和Unchecked Exception(非受检异常,可以不处理)
  • Error:Error属于程序无法处理的错误,不建议通过catch捕获。例如Java虚拟机运行错误VirtualMachineError、虚拟机内存溢出错误OutOfMemoryError、类定义错误NoClassDefFoundError等。这些错误发生时,Java虚拟机一般会选择线程终止

Checked Exception和Unchecked Exception有什么区别

Checked Exception即受检异常,Java代码在编译过程中,如果受检异常没有被处理,就没办法通过编译
除了RuntimeException及其子类以外,其他的Exception类及其子类都属于受检异常。常见的受检异常有:IO相关的异常、ClassNotFoundExceptionSQLException
Unchecked Exception即非受检异常,Java代码在编译过程中,即使不处理也可以正常通过编译
RuntimeException及其子类都统称为非受检异常,常见的有

  • NullPointerException(空指针错误)
  • IllegalArgumentException(参数错误比如方法入参类型错误)
  • NumberFormatException(字符串转换为数字格式错误,IllegalArgumentException的子类)
  • ArrayIndexOutOfBoundsException(数组越界错误)
  • ClassCastException(类型转换错误)
  • ArithmeticException(算术错误)
  • SecurityException (安全错误比如权限不够)
  • UnsupportedOperationException(不支持的操作错误比如重复创建同一用户)

Throwable类的常用方法有哪些

// 返回抛出异常的详细信息
public string getMessage();
public string getLocalizedMessage();

// 返回异常发生时的简要描述
public public String toString();

// 打印异常信息到标准输出流上
public void printStackTrace();
public void printStackTrace(PrintStream s);
public void printStackTrace(PrintWriter s);

// 记录栈帧的当前状态
public synchronized Throwable fillInStackTrace()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值