JAVA异常都有哪些

article/2025/10/30 14:53:13

1.异常

一、Error和Exception

package org.psmaxwell.exception;
//Exception in thread "main" java.lang.StackOverflowError
public class Demo01 {public static void main(String[] args) {new Demo01().a();}public void a(){b();}public void b(){a();}
}
package org.psmaxwell.exception;public class Demo01 {public static void main(String[] args) {//Exception in thread "main" java.lang.ArithmeticException: / by zeroSystem.out.println(11/0);}
}

 要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:

1.检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。

2.运行时异常:运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。

3.错误ERROR:错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。

异常体系结构

ERROR

Exception

二、 捕获和抛出异常

异常处理五个关键字:
try、catch、finally、throw 、throws

package org.psmaxwell.exception;public class Test {public static void main(String[] args) {int a = 1;int b = 0;//假设要捕获多个异常,从小到大!try { //try监控区域System.out.println(a/b);} catch (Error e) { //catch(想要捕获的异常类型) 捕获异常System.out.println("Error");} catch (Exception e) {System.out.println("Exception");}catch (Throwable e) {System.out.println("Throwable");} finally { // 处理善后工作System.out.println("finally");}//finally 可以不要 finally,假设IO 资源关闭}
}
package org.psmaxwell.exception;public class Test2 {public static void main(String[] args) {int a = 1;int b = 0;// CTRL + ALT + Ttry {System.out.println(a/b);} catch (java.lang.Exception e) {e.printStackTrace();  // 打印错误栈信息} finally {}}
}
package org.psmaxwell.exception;public class Test {public static void main(String[] args) {try {new Test().test(1,0);} catch (java.lang.Exception e) {e.printStackTrace();}}//假设这个方法中,处理不了这个异常,方法上抛出异常。public void test(int a,int b){if (b==0){throw new ArithmeticException(); // 主动抛出异常,一般在方法中使用。}System.out.println(a/b);}
}
/***         //假设要捕获多个异常,从小到大!**         try { //try监控区域**             if (b==0){*                 throw new ArithmeticException(); //主动抛出异常*             }*             System.out.println(a/b);**         } catch (Error e) { //catch(想要捕获的异常类型) 捕获异常*             System.out.println("Error");*         } catch (Exception e) {*             System.out.println("Exception");*         }catch (Throwable e) {*             System.out.println("Throwable");*         } finally { // 处理善后工作*             System.out.println("finally");*         }*/

三、自定义异常及经验小结


http://chatgpt.dhexx.cn/article/NeopUPmj.shtml

相关文章

Java异常类详解

目录 异常简介: 异常体系: 异常的处理: 自定义异常类: 一.异常简介: 1.1 异常定义: 异常是运行程序的过程中产生的异常情况。异常的情况是指程序在运行过程中,可能由于外界条件的变更&…

java异常处理方式

java异常处理方式 java通过面向对象的方式进行异常处理,一旦方法出现异常,系统自动根据该异常对象寻找合适的异常处理器(Exception Handler)来处理异常,把各种不同的异常进行分类,并提供了良好的接口。 j…

Java异常

Java笔记 文章目录 一、简介二、空指针异常三、自定义异常 一、简介 一个健壮的程序必须能够处理各种异常。 我们应该如何处理异常?两种方式: 返回约定错误码,例如200表示成功。在语言层面提供异常处理机制。 必要性说明: 异常需…

java异常体系

java异常体系结构图 一:java异常体系 1.Thorwable类(表示可抛出)是所有异常和错误的超类,两个直接子类为Error和Exception,分别表示错误和异常。 2.其中异常类Exception又分为运行时异常(RuntimeException)和非运行时…

Java 异常

Java异常 Java异常是Java提供的一种识别及响应错误的一致性机制。 Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。在有效使用异常的情况下,异常能清晰的回答3个问题:异常类型…

JAVA异常详解

异常的定义 异常就是有异于常态,和正常情况不一样,有错误出现。在java中,阻止当前方法或作用域的情况,称之为异常。 异常的分类 Error:是程序中无法处理的错误,表示运行应用程序中出现了严重的错误。此类错…

java异常判断_Java异常类

异常指不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。异常是一个事件,它发生在程序运行期间,干扰了正常的指令流程。Java通 过API中Throwable类的众多子类描述各种不同的异常。因而,Java异常都是对象,是Throwable子类的实例,描述了出现在一段编码中的 错…

2020-11-08

Java:详解Java中的异常(Error与Exception) 置顶 王小二(IT) 2018-06-22 16:54:26 66242 收藏 389 分类专栏: 编程语言(Java基础) 文章标签: try catch finally Error 版权 《Java:详解Java中的异常(Error与Exception)》《Jav…

Java中异常详解

目录 介绍 : 异常体系: 异常的分类 : Java 默认处理异常的方式(报错) : 异常处理方法: try...catch : try...catch...finally: try...catch ....catch.....catch.... 异常对象的常见方法&#xff…

Java中的异常

目录 1. 异常产生的原因和分类 1.1 异常产生的原因 1.2 异常分类 2. 异常的处理 2.1 防御式编程 2.2 异常的抛出(throw) 2.3 异常的捕获 2.3.1 throws异常声明 2.3.2 try-catch捕获异常并处理 2.3.3 finally 3.自定义异常类 Java中的异常&…

Java异常(超详细!)

1、什么是异常,java提供异常处理机制有什么用? 什么是异常:程序执行过程中的不正常情况。异常的作用:增强程序的 健壮性。 eg. public class ExceptionTest01 {public static void main(String[] args) {int a 10;int b 0;//…

最全最详细的Java异常处理机制

一、异常概述与异常体系结构 异常概述 在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式&…

论文阅读_Heatmap解释

关节的热力图(Heatmap) 每一个关节点,生成一张热力图heatmap, 热力图的响应值作为关节位置的概率或似然. 热力图中数值越大的位置,响应值越大,表示越有可能是关节的位置. 那么构造heatmap实际上是构造了一个中间状态,这个heatmap有如下的一些优点: **1…

R绘图|heatmap

# 1.设置工作目录及调用R包 setwd("D://heatmap") library(vegan) library(RColorBrewer) library(gplots) library(permute) library(lattice)图1 原始数据文件格式。行名为样地名,列名为物种名。 # 2. 读入数据 dir() aoaread.csv("Aspe.csv"…

用Python绘制Heatmap

本文内容为基于python的heatmap的绘制与渲染 文章目录 前言一、Heatmap是什么?二、使用步骤1.引入库2.代码 总结 前言 在写论文时,看到大佬们的文章中精美的图表。却不知道如何进行绘制,本文提供了一种heatmap的绘制方式。 一、Heatmap是什么…

HeatMap(热图)的原理和实现

HeatMap(热图)的原理和实现 先来看两张图: (1)10年世界杯决赛,冠军西班牙队中门将、后卫、中场及前锋的跑位热图 通过热图,我们可以很清楚的看出四个球员在比赛中跑动位置的差异。 &#xff…

人体姿态估计-生成heatmap的方法

人体姿态估计-生成heatmap的方法 参考Simple BaseLine生成HeatMap的方法,这里整理进行显示,方便可视化: Simple BaseLine生成HeatMap的方法:human-pose-estimation.pytorch/JointsDataset.py at master microsoft/human-pose-es…

seaborn可视化——一文搞懂heatmap参数

文章目录 datacmaplinewidths、linecolorsquareaxannot指定为True指定为同形状数组 vmax、vminannot_kwsmaskxticklabels、yticklabels设置为auto指定整数指定为True centerrobustfmtcbar 数据使用的是seborn内置数据 官网链接:https://seaborn.pydata.org/generate…

BagNet特征heatmap可视化

BagNet地址:https://github.com/wielandbrendel/bag-of-local-features-models BagNet是ResNet的变体,显著的区别是将3x3卷积变为1x1卷积来达到构造整体网络具有某个最终的感受野(receptive field)目的。在这里主要讲解对于一张来源于ImageNet的尺寸为22…

关键点检测——heatmap热力图法

一、数据集格式 二、解析xml文件,生成data_center.txt from PIL import Image import math,os from xml.etree import ElementTree as ETdef keep_image_size_open(path, size(256, 256)):img Image.open(path)temp max(img.size)mask Image.new(RGB, (temp, te…