zoukankan      html  css  js  c++  java
  • throw和throws的区别

    throw和throws的区别

    抛出异常有三种形式,一是throw,一个throws,还有一种系统自动抛异常。下面它们之间的异同

    一、系统自动抛异常

    当程序语句出现一些逻辑错误、主义错误或类型转换错误时,系统会自动抛出异常

    二、throw

    1、throw是语句抛出一个异常,一般是在代码块的内部,当程序

    现某种逻辑错误时由程序员主动抛出某种特定类型的异常

    2、定义在方法体内

    3、创建的是一个异常对象

    4、确定了发生哪种异常才可以使用

    三、throws

    1、在方法参数列表后,throws后可以跟着多个异常名,表示抛出的异常用逗号隔开

    2、表示向调用该类的位置抛出异常,不在该类解决

    3、可能发生哪种异常

    throws用在方法声明后面,跟的是异常类名,throw用在方法体内,跟的是异常对象名。

         throws可以跟多个异常类名,用逗号隔开,throw只能抛出一个异常对象名。

         throws表示抛出异常,由该方法的调用者来处理,throw表示抛出异常,由方法体内的语句处理。

    throws表示出现异常的一种可能性,并不一定会发生这些异常,throw则是抛出了异常,执行throw则一定抛出了某种异常。

    四、异常

    异常概述:

    异常:异常是指在程序的运行过程中所发生的不正常的事件,它会中断正在运行的程序。简单来说就是程序出现了不正常的情况。异常本质就是Java当中对可能出现的问题进行描述的一种对象体现。

     

    如果我们不做任何处理,异常将会交由虚拟机来处理

     

    虚拟机的处理方式:

    把异常的名称,异常出现的位置,异常原因,等信息输出打印在控制台,并同时将  程序停止执行。

    在写程序时,对可能会出现异常的部分通常要用try{...}catch{...}去捕捉它并对它进行处理;

    用try{...}catch{...}捕捉了异常之后一定要对在catch{...}中对其进行处理,那怕是最简单的一句输出语句,或栈输入e.printStackTrace();

    如果是捕捉IO输入输出流中的异常,一定要在try{...}catch{...}后加finally{...}把输入输出流关闭;

    如果在函数体内用throw抛出了某种异常,最好要在函数名中加throws抛异常声明,然后交给调用它的上层函数进行处理。

    作为新手小菜鸟的我,只想记录,便于温故知新,如有错误或疏忽,请留言,审查后改正,谢谢各位大佬
  • 相关阅读:
    hdu 1395 2^x(mod n) = 1(C++)(欧拉定理 分解素因数)
    6. 数论准备知识
    hdu 2973 YAPTCHA(C++)(威尔逊定理)
    牛客小白月赛12——B.华华教月月做数学
    牛客小白月赛12——A.华华听月月唱歌
    5. 卡特兰数(Catalan)公式、证明、代码、典例.
    4.质数判定和质数筛法(埃拉托色尼筛选法,线性筛法/欧拉筛法)
    3.牛顿迭代法求解方程的根
    Codeforces刷题
    刷题计划
  • 原文地址:https://www.cnblogs.com/zhangsonglin/p/10556402.html
Copyright © 2011-2022 走看看