【java】异常与错误

Throwable包括Error和Expected。

Error

Error错误是程序无法处理的,由JVM产生并抛出的。

举例:StackOverflowError \ ThreadDeath

Expected

Expected异常包括两类,即受检异常(非运行时异常)和非受检异常(运行时异常),异常往往是由程序的逻辑错误引起的。异常可以由程序自行处理。

受检异常:在编辑器中可以检测到,无需运行。

举例:ClassNotFoundException

非受检异常:运行后才可以检测到的异常。

举例:ArrayIndexOutOfBoundsException \ 空指针

程序处理异常的方式
① try - catch - finally

原本的程序设计是:一旦出现异常,那么将不再向下执行程序。

但是如果提前将可能出现异常的程序用try - catch包裹,那么程序即使出现问题也会继续向下执行。finally是不管上边正确还是错误,都会执行的程序。

public class Main {public static void main(String[] args) {int[] arr = new int[5];try {System.out.println("----------这是一条语句----------");arr[5] =  1;System.out.println("这条语句不会执行");} catch (Exception e){System.out.println("出现异常了");} finally {System.out.println("不管是否出现异常都会执行");}}
}
运行结果

② 抛出

抛出是让程序的调用程序处理异常,这并不能解决问题,只是指出了问题所在。

public class Main {public static void main(String[] args) {try {run();} catch (ClassNotFoundException e) {e.printStackTrace();}System.out.println("try-catch虽然报错,但仍然可以运行");}public static void run() throws ClassNotFoundException {fly();}public static void fly() throws ClassNotFoundException {Class.forName("MainX");}
}
报错但存在输出
public class Main {public static void main(String[] args) throws ClassNotFoundException {run();System.out.println("仅报错,并不能输出");}public static void run() throws ClassNotFoundException {fly();}public static void fly() throws ClassNotFoundException {Class.forName("MainX");}
}

报错且不存在输出

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/12693.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle 临时表 在sql 里面用完要删除吗

临时表 在sql 里面用完要删除吗 在Oracle数据库中,如果您使用的是ON COMMIT DELETE ROWS创建的临时表,那么当当前会话结束或者执行了显式的COMMIT或ROLLBACK操作后,表中的数据会自动被清除。这意味着通常情况下,您不需要手动删除…

阿里云服务器下,部署LNMP环境安装wordpress

目录 1 LNMP部署1、简单说明2、nginx部署3、php8 安装4、mysql8安装5、配置 nginx 实现支持 PHP 程序6、安装 php 组件7、测试 2 wordpress部署1、安装2、配置 总结 1 LNMP部署 1、简单说明 首先需要明白,LNMP指的是Linux、Nginx、MySQL、PHP。而如果使用阿里云服…

数字化应用标杆 | 又两家成套厂效率翻倍,利用率高达93%以上!

利驰 联能 & 利驰 俊郎 近日,利驰数字科技(苏州)有限公司(简称利驰软件)成功与俊郎电气有限公司(简称俊郎电气)、浙江联能电气有限公司(简称联能电气)成功确立了数字…

【全开源】国际版JAVA同城服务美容美发到店服务上门服务系统源码支持Android+IOS+H5

国际版同城服务美容美发到店与上门服务系统:一站式打造美丽新体验 随着人们生活水平的提高和审美观念的升级,美容美发服务已成为人们日常生活中不可或缺的一部分。为了满足全球消费者的多样化需求,我们推出了“国际版同城服务美容美发到店与…

时间管理的误区:为什么你越高效就越没有时间?

在平衡生活和工作的过程中,时间管理无疑很重要。然而,许多人发现在提高效率后,却发现自己越来越感到时间紧迫,仿佛陷入了一个无解的循环。这背后的原因,往往是由于一系列时间管理的误区所致。 一个常见的误区是&…

在 CLion、Dev-C++ 或 Code::Blocks 下面配置 EasyX

前言 本文提供了将 EasyX 适配到 MinGW 上的库文件,并详细介绍如何将 EasyX 配置到 DevCpp 或 CodeBlocks 等以 MinGW 为编译器的集成开发环境。 库文件下载 点击这里下载 easyx4mingw_20220901 点击这里下载 easyx4mingw_20220610 (上个版本&#x…

Php 读取execl

安装PhpSpreadsheet composer require phpoffice/phpspreadsheet <?phprequire vendor/autoload.php; // 引入Composer自动加载文件use PhpOffice\PhpSpreadsheet\IOFactory;// 指定Excel文件路径 $filePath path/to/your/excel/file.xlsx;try {// 加载Excel文件$spreadsh…

C++并发:锁

一、前言 C中的锁和同步原语的多样化选择使得程序员可以根据具体的线程和数据保护需求来选择最合适的工具。这些工具的正确使用可以大大提高程序的稳定性和性能&#xff0c;本文讨论了部分锁。 二、std::lock 在C中&#xff0c;std::lock 是一个用于一次性锁定两个或多个互斥…

鸿蒙 DevEcoStudio:关系型数据库增删改查练习

修改entry/src/main/ets/entryability目录下的EntryAbility.ts文件&#xff1a; 在 export default class EntryAbility extends UIAbility {onCreate(want, launchParam) {hilog.info(0x0000, testTag, %{public}s, Ability onCreate); 之后添加&#xff1a; const config…

学习Nginx(五):虚拟主机配置

核心功能 在演示虚拟主机配置之前&#xff0c;来看一下Nginx配置的核心功能说明。 了解配置更多功能&#xff0c;请查看官方说明&#xff1a; http://nginx.org/en/docs/ngx_core_module.html [rootRockyLinux9 conf]# cat nginx.conf # 核心功能&#xff0c;全局配置 # 设置启…

【Vue3源码实现】Ref isRef unRef proxyRefs实现

前言 在上篇文章中 我们了解了响应式原理&#xff0c;并在最后实现了reactive。 上文链接&#x1f525;&#x1f525;&#x1f525;Vue3响应式原理实现与track和trigger依赖收集和触发依赖 在我们的日常业务中&#xff0c;我们有可能需要将一个基础数据类型的值也转换成响应式…

Linux 生态与工具

各位大佬好 &#xff0c;这里是阿川的博客 &#xff0c; 祝您变得更强 个人主页&#xff1a;在线OJ的阿川 大佬的支持和鼓励&#xff0c;将是我成长路上最大的动力 阿川水平有限&#xff0c;如有错误&#xff0c;欢迎大佬指正 目录 Linux生态简介:Linux工具lrzsz&#xff…

抖音产品全线恢复

商城&#xff0c;商品&#xff0c;直播&#xff0c;小黄车 等等

mysql数据库插入中文失败

有一张表&#xff0c;结构如下&#xff1a; MariaDB [test]> show create table dept; ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------…

智能仪表在铁塔行业的应用

应用场景 可应用于基站的交直流配电箱及对基站内的动力设备进行数据采集和控制。 功能 1.对多个回路进行全电参量测量&#xff0c;实现基站内各回路用电能耗的集中管理&#xff1b; 2.丰富的DI/DO输入输出&#xff0c;NTC测温&#xff0c;温湿度测量等非电参量监测&#xff…

分体工业读写器的适用场景有哪些?

工业读写器根据设计方式不同&#xff0c;可分为一体式读写器和分体式读写器&#xff0c;不同读写器特点不同&#xff0c;适用场景也不同&#xff0c;下面我们就一起来了解一下超高频分体读写器适用场景有哪些。 超高频分体读写器介绍 超高频分体读写器是一种射频识别(RFID)设…

Sass语法介绍-导入

11【Sass语法介绍-导入】 1.前言 在 CSS 中我们可以通过 import 来导入一个样式文件&#xff0c;Sass 扩展了 CSS 的 import 规则&#xff0c;使得可以导入 CSS 后缀的样式文件和 Scss 后缀的样式文件&#xff0c;并且提供了对 mixin 、函数和变量的访问。 与 CSS 的 import…

AI技术的实际应用和影响

随着人工智能技术的快速发展&#xff0c;越来越多的AI工具开始出现在我们的生活中。这些工具在各个领域都发挥着重要的作用&#xff0c;为人们带来了便利和效率。在这篇文章中&#xff0c;我们将探讨人们在使用AI工具时最喜欢的和认为最好用的工具&#xff0c;并展示AI技术的实…

【QEMU系统分析之实例篇(三十五)】

系列文章目录 第三十五章 QEMU系统仿真的机器创建分析实例 qdev_connect_gpio_out_named(lpc_dev, ICH9_GPIO_GSI) 文章目录 系列文章目录第三十五章 QEMU系统仿真的机器创建分析实例qdev_connect_gpio_out_named(lpc_dev, ICH9_GPIO_GSI) 前言一、QEMU是什么&#xff1f;二、…

Python内置函数oct()详解

Python中的oct()函数是一个内置函数&#xff0c;用于将一个整数转换成它的八进制字符串表示。 函数定义 oct()函数的基本语法如下&#xff1a; oct(x)x&#xff1a;一个整数。 函数返回x的八进制表示&#xff0c;以字符串形式。 基本用法 将整数转换为八进制 number 64…