zoukankan      html  css  js  c++  java
  • Java学习之异常篇

    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 结尾

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

  • 相关阅读:
    树形结构基础
    最长公共子序列
    四 过滤模式 map Only
    三 概要模式 2) MR倒排索引、性能分析、搜索干扰词。
    三 概要模式 1)数值概要 (单词计数记录计数最大值/最小值/计数平均值、中位数、标准差)
    一 梳理 从 HDFS 到 MR。
    个人学习源码的 HBase误区的总结 与 架构图
    15 hbase 学习(十五)缓存机制以及可以利用SSD作为存储的BucketCache
    13 hbase源码系列(十三)缓存机制MemStore与Block Cache
    HBase 系统架构
  • 原文地址:https://www.cnblogs.com/nice0e3/p/13450043.html
Copyright © 2011-2022 走看看