(java基础学习)异常

2023-10-29

1.基本概念:java语言中,将程序中发生的不正常情况称为“异常”。(开发过程中的语法错误和逻辑错误不是异常)

2.异常事件分为两大类:(1)Error(错误) (2)Exception

(1)Error(错误):java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等,比如:StackOverflowError(栈溢出)和OMM(out of memory),Error是严重错误,程序会崩溃。

(2)Exception:其他因编程错误或偶然的外在因素导致的一般性问题,Exception分为两类:(1)运行时异常(编辑器检查不出来)(2)编译时异常(编译时编辑检查出的异常)

3.异常体系图(!!!!!重要)

常见的运行时异常有(1)NullPointerException(空指针异常)(2)ArithmeticException(数学运算异常)(3)ArrayIndexOutOfBoundsException(数组下标越界异常)(4)ClassCastException(类型转换异常)(5)NumberFormarException(数字格式不正确异常)

常见的编译时异常有

4.异常处理的方式

(1)try-catch-finally

程序员在代码中捕获的异常,自行处理

(2)throws

 将发生的异常抛出,交给调用者(方法)来处理,最顶级的处理者就是JVM

try-catch-finally示意图

 

try-catch-finally执行顺序

 

 

throws异常处理

 

 

 

 5.自定义异常

6.throw和throws的区别

 

 

 

 

 

 

 

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

(java基础学习)异常 的相关文章

  • 使用 Java 的 Apache Http 摘要身份验证

    我目前正在开发一个 Java 项目 但无法使 http 摘要身份验证正常工作 我尝试使用 Apache 网站 但没有帮助 我有一个需要 HTTP 摘要身份验证的网站 DefaultHttpClient httpclient new Defa
  • 垃圾收集器如何在幕后工作来收集死对象?

    我正在阅读有关垃圾收集的内容 众所周知 垃圾收集会收集死亡对象并回收内存 我的问题是 Collector 如何知道任何对象已死亡 它使用什么数据结构来跟踪活动对象 我正在研究这个问题 我发现GC实际上会跟踪活动对象 并标记它们 每个未标记的
  • 从 MATLAB 调用 Java?

    我想要Matlab程序调用java文件 最好有一个例子 需要考虑三种情况 Java 内置库 也就是说 任何描述的here http docs oracle com javase 6 docs api 这些项目可以直接调用 例如 map ja
  • 将巨大的模式编译成Java

    有两个主要工具提供了将 XSD 模式编译为 Java 的方法 xmlbeans 和 JAXB 问题是 XSD 模式确实很大 30MB 的 XML 文件 大部分模式在我的项目中没有使用 所以我可以注释掉大部分代码 但这不是一个好的解决方案 目
  • Mockito 使用 @Mock 时将 Null 值注入到 Spring bean 中?

    由于我是 Spring Test MVC 的新手 我不明白这个问题 我从以下代码中获取了http markchensblog blogspot in search label Spring http markchensblog blogsp
  • Sun 在 EDT 之外做 GUI 工作的演示?

    我正在看SplashDemo java http download oracle com javase tutorial uiswing examples misc SplashDemoProject src misc SplashDemo
  • 将人类日期(当地时间 GMT)转​​换为日期

    我正在服务器上工作 服务器正在向我发送 GMT 本地日期的日期 例如Fri Jun 22 09 29 29 NPT 2018在字符串格式上 我将其转换为日期 如下所示 SimpleDateFormat simpleDateFormat ne
  • 如何在 ant 中为 junit 测试设置 file.encoding?

    我还没有完全完成file encoding 和 ant https stackoverflow com questions 1339352 how do i set dfile encoding within ants build xml
  • Akka 与现有 java 项目集成的示例

    如果我已经有现有的javaWeb 应用程序使用spring and servlet容器 将 Akka 集成到其中的正确方法是什么 就像我将会有Actor1 and Actor2互相沟通的 开始使用这些演员的切入点是什么 例如 1 把它放在那
  • 在Java中运行bat文件并等待

    您可能会认为从 Java 启动 bat 文件是一项简单的任务 但事实并非如此 我有一个 bat 文件 它对从文本文件读取的值循环执行一些 sql 命令 它或多或少是这样的 FOR F x in CD listOfThings txt do
  • Java继承,扩展类如何影响实际类

    我正在查看 Sun 认证学习指南 其中有一段描述了最终修饰符 它说 如果程序员可以自由地扩展我们所知的 String 类文明 它可能会崩溃 他什么意思 如果可以扩展 String 类 我是否不会有一个名为 MyString 的类继承所有 S
  • 如何区分从 Saxon XPathSelector 返回的属性节点和元素节点

    给定 XML
  • 轻松的反应

    我有一个与这里描述的类似的案例 动态更改RESTEasy服务返回类型 https stackoverflow com questions 3786781 dynamically change resteasy service return
  • 部署 .war 时出现 Glassfish 服务器错误:部署期间发生错误:准备应用程序时出现异常:资源无效

    我正在使用以下内容 NetBeans IDE 7 3 内部版本 201306052037 爪哇 1 7 0 17 Java HotSpot TM 64 位服务器虚拟机 23 7 b01 NetBeans 集成 GlassFish Serve
  • 使用 HtmlUnit 定位弹出窗口

    我正在构建一个登录网站并抓取一些数据的程序 登录表单是一个弹出窗口 所以我需要访问这个www betexplorer com网站 在页面的右上角有一个登录链接 写着 登录 我单击该链接 然后出现登录弹出表单 我能够找到顶部的登录链接 但找不
  • 将 JScrollPane 添加到 JFrame

    我有一个关于向 Java 框架添加组件的问题 我有一个带有两个按钮的 JPanel 和一个添加了 JTable 的 JScrollPane 我想将这两个添加到 JFrame 中 我可以将 JPanel 添加到 JFrame 或将 JScro
  • 手动设置Android Studio的JDK路径

    如何为 Android Studio 使用自定义 JDK 路径 我不想弄乱 PATH 因为我没有管理员权限 是否有某个配置设置文件允许我进行设置 如果您查看项目设置 您可以从那里访问 jdk 在标准 Windows 键盘映射上 您可以在项目
  • Hibernate 本机查询 - char(3) 列

    我在 Oracle 中有一个表 其中列 SC CUR CODE 是 CHAR 3 当我做 Query q2 em createNativeQuery select sc cur code sc amount from sector cost
  • Java RMI - 客户端超时

    我正在使用 Java RMI 构建分布式系统 它必须支持服务器丢失 如果我的客户端使用 RMI 连接到服务器 如果该服务器出现故障 例如电缆问题 我的客户端应该会收到异常 以便它可以连接到其他服务器 但是当服务器出现故障时 我的客户端什么也
  • 由 Servlet 容器提供服务的 WebSocket

    上周我研究了 WebSockets 并对如何使用 Java Servlet API 实现服务器端进行了一些思考 我没有花费太多时间 但在使用 Tomcat 进行一些测试时遇到了以下问题 如果不修补容器或至少对 HttpServletResp

随机推荐

  • 如何分析和提高大型项目(C/C++)的编译速度?

    C 编译基本原理 对于C C 代码通常来说整个构建过程分为以下几个主要部分 预处理 在此阶段主要完成的工作是将头文件展开 替换宏指令 条件编译展开 消除注释 编译 在此阶段主要将预编译好的文件转换成汇编语言 高级语言 gt LLVM平台无关
  • 生产制造业ERP系统模块

    生产制造业ERP系统模块 1 计划管理系统 1 物料需求管理 支持如下功能 配置产品的管理 用户可以定义可选件 必选件 以及必选件中的可选件 BOM成批修改 BOM合法性 完整性和嵌套性检查 BOM单级正查和反查 多级正查和反查 以及综合查
  • 手把手教你实现红黑树

    目录 一 红黑树介绍与优势 二 红黑树的特性 所有节点不是黑色就是红色 根节点为黑色 红色节点的左右孩子节点必须为黑色 每一条路径均含有相同的黑色节点数 叶子节点为黑色 三 红黑树实现原理 一 插入节点颜色选择 二 插入后 父节点是黑色 三
  • Waiting for changelog lock....

    Could not acquire change log lock Currently locked by XXXXXX 在本地启动 的时候 一直停在Waiting for changelog lock 然后最后的异常是Could not
  • 自学Python能干些什么副业

    Python是一种非常优秀的编程语言 它逐渐受到越来越多人的青睐 并且已经了解到Python可以做很多事情 同时 还可以使用Python做一些兼职工作 如 兼职数据处理 兼职数据查询 兼职p图等 自学Python能干些什么副业 Python
  • 抖音C#版,自己抓第三方抖音网站

    感谢http dy lujianqiang com技术支持 文章更新 http dy lujianqiang com这个服务器已经关了 现在没用了 版权归抖音公司所有 该博客只是为交流学习所使用 编译后的内容将24小时内删除 该程序所获取到
  • 深度分析:Spring Boot 的接口限流算法

    在一个高并发系统中对流量的把控是非常重要的 当巨大的流量直接请求到我们的服务器上没多久就可能造成接口不可用 不处理的话甚至会造成整个应用不可用 那么何为限流呢 顾名思义 限流就是限制流量 就像你宽带包了1个G的流量 用完了就没了 通过限流
  • 「MindMaster」思维导图 使用「指南」

    前言 思维导图是一个可视化的图形思维工具 为什么要用思维导图 能帮助你从多方面多角度去思考 去发散 能帮助你理清复杂的逻辑关系 其倡导的网状的分散性思维和纵深性的逻辑思维有助于你形成相对完整的结构性思维 常见的逻辑结构 思维导图 发散和纵深
  • 机器学习 day26(多标签分类,Adam算法,卷积层)

    1 多标签分类 多标签分类 对于单个输入特征 输出多个不同的标签y 多类分类 对于单个输入特征 输出单个标签y 但y的可能结果有多个 2 为多标签分类构建神经网络模型 我们可以构建三个不同的神经网络模型来分别预测三个不同的标签y 但这种方法
  • 【宜搭】低代码开发师(中级)考试仓库库存管理系统流程

    目标 根据步骤能快速通过考试 一 建一个进货登记表 注意点 如图 公式如下
  • 数据结构与算法-线性表-线性存储结构

    数据结构中的线性表的第一种物理结构 顺序存储结构 它的c 实现代码如下 ifndef SHUNXUBIAO H define SHUNXUBIAO H include
  • js模糊匹配数组中含有某字符串

    数组中匹配单个字符串的方法 传入数组支持格式 function searchStr str arr let newList 要匹配字符串的首个字符 let startChar str charAt 0 要匹配字符串的字符长度 let str
  • php服务器性能计算,CPU主频和内核数量以及服务器性能之间的关系

    CPU主频和内核数量以及服务器性能之间的关系 要点 本文介绍了CPU主频和内核数量以及服务器性能之间的关系 希望对您有用 如果有疑问 可以联系我们 在系统维护工作中曾经被问到CPU内核数量和主频之间的关系的一个问题 当时和服务器厂家磨叽了几
  • 从数据分布的角度提高对抗样本的可迁移性

    1 引言 对抗迁移性攻击一般是先通过代理模型生成对抗样本 然后将该样本迁移到其它黑盒模型中进行攻击 对抗迁移性的根本原因目前仍有待于探究 以前的工作主要从模型的角度探讨原因 例如决策边界 模型架构和模型容量等 在该论文中 作者从数据分布的角
  • 06-----查看Linux内核版本和系统版本的命令

    1 查看Linux内核版本 1 cat proc version 2 uname a 结果 可以看到Linux内核版本和gcc版本等信息 2 查看Linux系统版本的命令 3种方法 1 lsb release a 这个命令适用于所有的Lin
  • 数学建模(2)

    数学建模 2 主成分分析法 主成分分析实际上是一种降维方法 注意 在实际研究中 由于主成分的目的是为了降维 减少变量的个数 故一般选取少量的主成分 不超过5或6个 只要它们能解释变异的70 80 称累积贡献率 就行了 主成分估计采用的方法是
  • iOS中socket通信---基于CocoaAsyncSocket实现

    前言 最近项目中涉及到socket通信这块 所以有幸有时间大概看了一下这一块 目前还在实现阶段 因此现在还不能去些具体的实现过程 现在只大概描述一下这几天看的资料和自己的一点心得吧 等项目实现之后会将具体的实现流程写出来以供大家参考 Soc
  • 给虚拟机换桌面壁纸

    Ubuntu budgie的桌面环境 他们一直不给我换 那我想换一个好看的壁纸 scp指令 我刚开始用的scp指令 不知道为什么一直连不上 所以没有用这个来上传图片文件 scp local file remote username remo
  • usaco Milk Routing

    这个题 自己当时做的时候真脑残 因为每条边上面加了容量c的限制 所以就把我吓的用暴力深搜去搞了 尼玛 数据范围那么 大 好吧 完了 我深搜的过程中加了个烂剪枝 结果还是wa了 真心不知道错在哪了 下来之后看了题解 恶心的题解 我当时也想到枚
  • (java基础学习)异常

    1 基本概念 java语言中 将程序中发生的不正常情况称为 异常 开发过程中的语法错误和逻辑错误不是异常 2 异常事件分为两大类 1 Error 错误 2 Exception 1 Error 错误 java虚拟机无法解决的严重问题 如 JV