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

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

  • 相关阅读:
    QT5编程入门教程
    bstr_t与BSTR
    Android Studio 更改APP图标
    Indy服务器关闭所有客户端连接
    使用高德地图API
    内网渗透——Hadoop未授权访问getshell
    内网渗透——struts2远程任意代码执行(s2-046)
    工具使用——cobalt strike使用
    工具使用——docker使用
    漏洞复现——weblogic任意文件上传(cve-2018-2894)
  • 原文地址:https://www.cnblogs.com/nice0e3/p/13450043.html
Copyright © 2011-2022 走看看