Java学习之异常篇

Java学习之异常篇0x00前言计划这几天把JavaSE的基础都给总结完,然后开始我的web部分。0x01异常概念说到异常,第一个联系到的可能就是bug,但是我们需要了解一下异常到底是怎

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

Java学习之异常篇

0x00 前言

计划这几天把Java SE的基础都给总结完,然后开始我的web部分。

0x01 异常概念

说到异常,第一个联系到的可能就是bug,但是我们需要了解一下异常到底是怎么去爆出的。

异常 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。

在java里面异常分成了一个单独的类,产生异常其实就是创建了一个异常的对象并且抛出异常对象。而抛出异常后处理方式就是直接中断程序。

0x02 异常体系

异常的机制其实是为了我们更好的找到程序中的问题,异常的根类是Throwable,该类下有两个子类,分别是Error和Exception。

一般我们所说的异常就是Excption,一些可以改进代码避免的错误,需要做一些异常处理。
而Error是一些无法解决的报错。

0x03 异常处理

声明异常throws

声明异常是将问题标注出来,报告给调用者。如果方法内通过throw抛出了编译时异常,而没有捕获处理,那么必须通过throws进行声明,让调用者去处理。

异常声明格式:


饰符 返回值类型 方法名(参数) throws 异常类名1,异常类名2…{ }

public static void main(String[] args) throws Exception {
        



    }

异常捕获

这种声明只能让程序能够编译成功,如果再程序运行当中,产生了一些不当的操作,就会抛出该异常,程序直接就终止了,我们需要对该异常做出处理。

异常捕获可以对出现的异常做出对应的处理,这时候就可以用到try-catch的方式来捕获异常。

异常捕获定义格式:

try{
    ...
}catch(异常类型 e){
    ...
}

完成的定义格式:

try{
    ...
}catch(异常类型 e){
    ...
}finally{
    ...
}

这里try代码块里面代表的是可能产生异常的代码,catch里面则是抛出异常执行的代码,而finally代码块内,无论代码是否抛出异常都会执行的代码。

0x04 结尾

关于异常的内容其实比较少,这里就做一个简单的记录

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119951.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux 解压war到root_unzip命令解压war包方法

    linux 解压war到root_unzip命令解压war包方法unzip 命令用于解压缩由 zip 命令压缩的 zip 压缩包 语法 unzip 选项 参数 选项 c 将解压缩的结果显示到屏幕上 并对字符做适当的转换 f 更新现有的文件 l 显示压缩文件内所包含的文件 p 与 c 参数类似 会将解压缩的结果显示到屏幕上 但不会执行任何的转换 t 检查压缩文件是否正确 u 与 f 参数类似 但是除了更新现有的文件外 也会将压缩文件中的其他文件解压缩到目录中

    2025年8月3日
    5
  • c语言课程设计学生成绩管理系统_c语言课程设计学生信息管理系统

    c语言课程设计学生成绩管理系统_c语言课程设计学生信息管理系统《C语言学生成绩管理系统设计.doc》由会员分享,可免费在线阅读全文,更多与《C语言学生成绩管理系统设计》相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索。1、GE\nquot);rintf(quot\t%ld\tquot,stu[i]num);rintf(quot%s\tquot,stu[i]name);rintf(quot%s\tquot,stu[i]sex);rint…

    2022年9月15日
    2
  • 何时使用数据库存储过程

    何时使用数据库存储过程

    2021年8月21日
    61
  • python 监控网页_python实时监控网页

    python 监控网页_python实时监控网页PHP从语言层面上讲几乎是一无是处,具体实现的质量也乏善可陈,但它胜在最要命的部署上:没有任何其他语言有像PHP一样适合大规模部署的方式。基本上装好Apache/mod_php之后,PHP应用的部署就简化为了复制文件。  即便是考虑到性能原因等采用nginx/FastCGI等替代方式,额外的工作也只是在于最初配置。一旦配置完成,之后的部署都是文件复制。服务器重启后通常会自动启动a…

    2022年7月16日
    16
  • 【奇巧淫技】python 助你每天早上八点自动发送天气预报邮件到QQ邮箱「建议收藏」

    【奇巧淫技】python 助你每天早上八点自动发送天气预报邮件到QQ邮箱「建议收藏」将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。也可以说是一个小人工智障。思路可以运用在不同地方,主要介绍的是思路。

    2022年6月28日
    100
  • pstack学习笔记

    pstack学习笔记################################################################################pstack学习笔记v0.12013.10.8*** 简介:pstack的功能是显示当前进程中函数的调用栈的关系,若是多线程的情况下,会显示各个      线程中函数调用的关系。 

    2022年9月14日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号