java中的异常结构

  • java 中的所有异常都来自于顶级父类 Throwable,Throwable 有两个子类 Exception 和 Error

    • Error 是 Java 虚拟机无法解决的严重问题,出现时会导致程序终止运行。如: StackOverflowError 和 OOM 。
    • Exception 不会导致程序停止,它又分为RunTimeException(运行时异常)和CheckedException(检查时异常)
      • CheckedException 是在编译过程中发现的异常,编译器要求 Java 程序必须捕获或声明所有编译时异常。
      • RunTimeException 是程序运行过程中出现的异常,只会导致当前线程执行失败。

常见的异常

  • 空指针异常
  • 数组索引越界异常
  • 类型转换异常

异常的抓抛机制

异常的抓取

  • try-catch-finally: 对代码块中出现的异常进行抓取,同时处理异常。
  • thorws + 异常类型: 抓取方法体中出现的异常,但是不处理,而是向上抛出给调用者。

异常的抛出

  • 程序正在执行的过程中,一旦出现异常,就会在异常代码处生成一个对应异常类的对象并将此对象抛出。一旦抛出对象以后,其后面代码将不再执行。
  • throw 是抛出一个手动创建的异常对象,而 throws 是加在方法上用于处理方法中出现的异常。



    图片原文地址:> https://blog.csdn.net/weixin_45661472/article/details/123616906

最新文章

  1. 关于__int128
  2. Windows程序设计(第五版)学习:第二章 Unicode简介
  3. hiho 第1周 最长回文子串
  4. eclipse import的项目报autowired cannot be resolved to a type的错误
  5. 【ArcGIS 10.2新特性】Geodatabase 10.2 常见问题
  6. iOS实现OAuth2.0中刷新access token并重新请求数据操作
  7. Java IO(1)基础知识——字节与字符
  8. IE8及其以下浏览器关于圆角表框的问题
  9. Docker 核心技术之Dockerfile
  10. JavaScript / 本地存储
  11. 【微服务No.3】AOP组件ASPectCore简单使用
  12. java----java集合框架图
  13. K8S学习笔记之Kubernetes数据持久化方案
  14. Server 2008 R2部署active directory服务器-ad域
  15. [转]windows环境下使用virtualenv对python进行多版本隔离
  16. 162. Find Peak Element (Array; Divide-and-Conquer)
  17. LOJ 2249: 洛谷 P2305: 「NOI2014」购票
  18. Kafka生产环境中的错误
  19. OpenSift源代码编译过程记录
  20. ubuntu 14.04 server(amd64) 安装ros indigo

热门文章

  1. 聊一聊js中元素定位的方法
  2. python学习第五周总结
  3. Ubuntu18.4安装g2o
  4. Requset02
  5. charles初级使用
  6. socket.io实现简易聊天室功能
  7. Cesium模型贴地问题(八)
  8. [代码审计基础 14]某cms变量覆盖到N处漏洞
  9. 【KAWAKO】在windows上用CMake和MinGW编译c++工程
  10. 跳板攻击之:SSH 隧道