当前位置: 首页 > article >正文

Java异常机制入门详解(上)

Java异常机制入门详解

  • 基础知识
  • 什么是异常?

在Java语言中,异常就是代表程序出现的问题。异常的引入不是让我们以后不出异常,而是程序出了异常之后,该如何处理。如如下两段代码,会各抛出一个异常:

int[]arr ={10,20,30};

System.out.println(arr[3]);

ArrayindexOutOfBoundsException

数组索引越界异常

int a =10;

int b =0;

System.out.println(a /b);

ArithmeticException

算数异常

  • 异常的体系

  • Error异常(严重错误)

Error:代表的系统级别错误(属于严重问题)

如果系统一旦出现问题,sun公司会把这些错误封装成Eror对象。Error是给sun公司自己用的,不是给我们程序员用的。因此我们开发人员不用管它。

  • Exception异常

Exception:叫做异常,代表程序可能出现的问题。我们通常会用Exception以及他的子类来封装程序出现的问题。异常共有2类:

运行时异常:RuntimeException及其子类,编译阶段不会出现异常提醒。运行时出现的异常(如:数组索引越界异常)

编译时异常:直接继承于Exception类,编译阶段就会出现异常提醒的。(如:日期解析异常)

运行时异常和编译时异常的区别?

●编译时异常:除了RuntimeExcpetion和他的子类,其他都是编译时异常。编译阶段需要进行处理,作用在于提醒程序员。

●运行时异常:RuntimeException本身和所有子类,都是运行时异常。编译阶段不报错,是程序运行时出现的。一般是由于参数传递错误带来的问题

常见的编译时异常

1.FileNotFoundException

2.ClassNotFoundException

3.SQLException

4.NoSuchFieldException

5.NoSuchMethodException

6.ParseException

常见的运行时异常

1.NullPointerException

2.ArithmeticException

3.ClassCastException

4.ArrayIndexOutOfBoundsException

5.StringIndexOutOfBoundsException

  • 异常的作用

作用一:异常是用来查询bug的关键参考信息

作用二:异常可以作为方法内部的一种特殊返回值,以便通知调用者底层的执行情况

  • 小结

1.异常是什么?

●程序中可能出现的问题

2.异常体系的最上层父类是谁?异常分为几类?

●父类:Exception。

●异常分为两类:编译时异常、运行时异常

3.编译时异常和运行时异常的区别?

●编译时异常:没有继承RuntimeExcpetion的异常,直接继承于Excpetion。

编译阶段就会错误提示

●运行时异常:RuntimeException本身和子类。编译阶段没有错误提示,运行时出现的。


http://www.kler.cn/a/161425.html

相关文章:

  • 学术论文写作丨机器学习与深度学习
  • Electron 项目启动外部可执行文件的几种方式
  • Autosar CP DDS规范导读
  • Qt 获取当前系统中连接的所有USB设备的信息 libudev版
  • 10款PDF翻译工具的探索之旅:我的使用经历与工具特色!!
  • WebStorm 如何调试 Vue 项目
  • 虎牙C++技术面经
  • UE蓝图 里的函数,编辑模式在Sequence里执行
  • 基于单片机的电子密码锁设计
  • 代码随想录算法训练营第四十二天| 416 分割等和子集
  • 如何使用HadSky搭配内网穿透工具搭建个人论坛并发布至公网随时随地可访问
  • Windows + docker + python + vscode : 使用容器docker搭建python开发环境,无需本地安装python开发组件
  • 『亚马逊云科技产品测评』活动征文|AWS云服务器EC2实例实现ByConity快速部署
  • openGL 三:矩阵和向量
  • 创建第一个 Flink 项目
  • Python 作业答疑_6.15~6.18
  • Livox_ros_driver2 消息 (msg) 类型对 SLAM 应用程序的适配
  • json转yolo格式
  • 大屏可视化基础学习-通用可套用模板【大屏可视化项目案例-15】
  • 每日一题:LeetCode-11.盛水最多的容器
  • Android11适配已安装应用列表
  • ZKP Understanding Nova (2) Relaxed R1CS
  • ESP32-Web-Server编程- 在 Web 上开发动态纪念册
  • 二叉树的层平均值[中等]
  • Python作业答疑_6.22~6.25
  • C语言基础概念考查备忘 - 标识符、关键字、预定义标识符、语法检查、语义检查 ... 左值、右值、对象、副作用、未定义行为、sizeof是什么等等