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

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

  • 相关阅读:
    HDU 1075 What Are You Talking About(字典树)
    HDU 1075 What Are You Talking About (stl之map映射)
    HDU 1247 Hat’s Words(字典树活用)
    字典树HihoCoder
    HDU 1277全文检索(字典树)
    HDU 3294 Girls' research(manachar模板题)
    HDU 3294 Girls' research(manachar模板题)
    HDU 4763 Theme Section(KMP灵活应用)
    Ordering Tasks UVA
    Abbott's Revenge UVA
  • 原文地址:https://www.cnblogs.com/nice0e3/p/13450043.html
Copyright © 2011-2022 走看看