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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Qt中QTableView设置分页显示的三种方法[通俗易懂]

    1、已知所有数据的情况下,以MVC模式对数据进行分页处理:参考链接:http://www.cnblogs.com/caomingongli/archive/2011/11/17/2252745.html参考链接:https://blog.csdn.net/xujiali5172923/article/details/478352652、数据库很大的时候,QTableView会自动生…

    2022年4月12日
    676
  • 图形推理专项突破训练1000题及详解_行测图形推理题怎么搜答案

    图形推理专项突破训练1000题及详解_行测图形推理题怎么搜答案图形推理是很常见的推理题型,在做这类型题目的时候,同学们出现了”两极分化”的特征,有的同学很快找到规律,做出了题目,有的同学却一直看着第一题”百思不得其解”。出现这样的情况,其根本原因在于图形推理是技巧性很强的题目,如果知道技巧,可以很快知道出题人考查的重点,从而快速联想到可会考的规律。下面我们一起来看一下图形推理的规(tao)律(lu):第一层:相似性相异(图形差距很大)→数量关系相同(图形差距…

    2022年9月10日
    3
  • Linux 下的make命令与Makefile

    Linux 下的make命令与Makefile概述博客内容包含linux下make命令的使用与makefile的书写规则等,希望通过本文档使读者对make命令makefile文件有进一步了解,由于鄙人经验学识有限文档中会有描述不准确以及理解偏差,欢迎读者指正。fythons@sina.com从一只猫说起hellokitty linux系统中的make命令与makefile文件make与makefile 在linux系统…

    2022年6月1日
    40
  • CImage 类

    CImage 类CImage提供增强的位图支持,包括加载和保存采用JPEG、GIF、BMP和可移植网络图形格式的图像(PNG)格式。说明无法在Windows运行时中执行的应用程序中使用此类及其成员。语法classCImage成员公共构造函数公共构造函数 “属性” 说明 CImage::CImage 构造函数。 公共方法公共方法 “属性” 说明 CImage::AlphaBlend 显示具有透明或半透明像素的位图。 CImage:.

    2022年6月30日
    35
  • IDEA 注释详解[通俗易懂]

    IDEA 注释详解[通俗易懂]IDEA注释及模板配置1.行注释ctrl+/2.块注释(多行),取消注释时不用选中多行,只需要在开始符号/*那里执行ctrl+shift+/3.方法和类注释/**+回车方法会直接返回带参数的注释,如下,但是类上信息为空/****@paramuser*/4.配置类和方法的注释模板ctrl+alt+…

    2022年9月28日
    2
  • cshtml标记html5,cshtml常用标签

    cshtml标记html5,cshtml常用标签@RenderSection:在布局页中,将呈现指定部分的内容并指定该部分是否为必需。用法:@RenderSection(“PageSpecificStyleSheetIncludes”,required:false)@Html.Partial:在布局页中,把一个个View给镶入进来并回传的一个Object(MvcHtmlString)用法:@Html.Partial(“_Top”)@H…

    2022年6月29日
    32

发表回复

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

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