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

异常 0-0

一、概念【理解即可】
1.异常:程序运行过程中,出现的非正常情况。
2.异常的处理:当异常出现时,执行一段预先准备好的代码。
3.异常的处理的必要性:减少用户的损失、同时减小给用户带来麻烦,也可以对用户做一些提示信息。
二、异常的分类 【面试重点】
1. ThrowableJava语言中所有错误或是异常的父类,位于java.lang包中
(1) String getMessage():获取字符串类型异常信息。//用于给用户展示提示信息
(2) void printStackTrace():打印输出方法调用过程中产生详细异常信息。//编程人员用于调试程序
2.子类Error:是Throwable的子类,代表错误
注意:Error代表仅靠程序本身无法恢复的严重的错误,例如JVM内存不足,或是方法调用过程中栈溢出等。
例如:java.lang.StackOverflowError(递归导致的栈溢出)
3.子类Exception:是Throwable的子类,代表异常
(1) RuntimeException:运行时异常、未检查异常,与RuntimeException有直接或是间接继承关系的异常类
a.特点:编译器不会检测此类异常,运行的时候报错。
b.处理:可处理,可不处理(严谨代码),此类异常可以避免。
c.常见的运行时异常:
java.lang.ArrayIndexOutOfBoundsException:下标越界
java.lang.NullPointerException:空指针异常
java.lang.ClassCastException:类型转换异常
java.lang.NumberFormatException:数字格式转换异常
(2)RuntimeException:非运行时异常、已检查异常,与RuntimeException没有任何的继承关系的异常类
a.特点:编译器检测此类异常,编译的时候报的错误。
b.处理:此类异常必须处理。
c.案例:Class.forName("day1.TestStudent"); //非运行时异常, 区分于语法错误
三、异常的产生
1.自动产生异常:
(1)产生原因:程序在运行过程中,遇到错误的代码,自动产生异常
(2)结果:程序中一旦遇到异常,则被终止,不能继续执行异常之后的代码。
2.手动产生异常【开发重点】(1)关键字:throw
(2)语法:throw new异常类类名("异常信息");
(3)位置:必须定义在方法内部
(4)结果:相当于return ;终止、结束当前程序,程序会因异常而被终止。
四、异常的传递【理解即可】
1. Java中的异常沿着方法的调用链进行反方向传递,最终传递给JVM,程序因被终止。
http://www.cnnetsun.cn/news/5018.html

相关文章:

  • 快速上手:5分钟部署Nginx LDAP认证系统
  • AuthMeReloaded:构建坚不可摧的Minecraft服务器安全防线
  • Wan2.2-T2V-A14B如何提升材质质感表现(金属/玻璃/织物)?
  • iFEM: Matlab有限元工具
  • MCU的FLASH与SRAM中存了什么?
  • Wan2.2-T2V-5B模型提供月度Token赠送活动
  • Wan2.2-T2V-A14B能否生成抖音热门特效滤镜?社交平台适配
  • 机械臂轨迹规划算法的优化研究:基于鲸鱼算法的353多项式时间最优解法与两种优化算法的对比分析—...
  • SPSS——判别分析——“逐步判别分析”
  • 离子交换树脂技术:解决贵金属回收五大难题的关键
  • 婚礼礼金电子礼簿 v0.3单文件丨无广告礼金记账工具
  • Spider语言终极指南:揭秘JavaScript进化的失落篇章
  • DeepSeek MLA 核心揭秘:如何实现 MHA 到 MQA 的无缝切换
  • 基于SpringBoot+Vue的学院个人信息管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】
  • 【2025最新】基于SpringBoot+Vue的洋州影院购票管理系统管理系统源码+MyBatis+MySQL
  • 前后端分离养老院管理系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • tensorflow 零基础吃透:RaggedTensor 在 Keras 和 tf.Example 中的实战用法 (补充)
  • 如何让lazy.nvim插件管理器完美支持中文界面?
  • 市场准入负面清单(2015-2018)
  • 电力电缆在线监测及故障预警测距系统:技术解析与 Python 实现
  • Wan2.2-T2V-A14B支持长时间视频分段生成与无缝拼接
  • OpCore Simplify:让黑苹果配置像搭积木一样简单
  • spRAG 开源项目:构建智能检索增强系统的完整指南
  • K8s 环境中的 JVM 调优实战
  • Dify文档解析能力全解析,竟能轻松应对高强度PDF加密?
  • 为什么学完黑盒测试用例设计方法,还是写不好用例?
  • 回收安川,伺服,电机,plc等
  • 31、编程开发中的库、工具与脚本语言使用指南
  • 2025年IDM激活终极指南:从新手到专家的完整解决方案
  • Bilive项目:B站直播录制与自动化投稿终极指南