博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
异常初阶
阅读量:5236 次
发布时间:2019-06-14

本文共 1170 字,大约阅读时间需要 3 分钟。

一、概述

  1. java中有异常处理机制。在java程序设计语言中,异常对象都是派生自java.lang.Throwable类,Throwable下两个子类Error和Exception,在Exception又分为派生自RuntimeException和非派生自RuntimeException。
  2. 派生自Error(不可控制,无能为力)的所有错误与RuntimeException(避免发生,你自身的问题,必须解决)类的所有异常称为非受检查异常(unchecked)所有其他异常称为受检查异常,送给异常处理器。
  3. 我们只需要关注的是在类所属关系上是非派生自RuntimeException的异常(即在内容上是受检查的异常)。

二、声明受检查异常

  1. 声明受检查异常格式:public FileInputStream(String name)throws FileNotFoundException{}
  2. 声明受检查异常注意点:
  • 子类方法中声明的受查异常不能比超类方法中声明的异常更通用。即子类受查异常应声明的更加特定或不进行声明。
  • 如果超类没有抛出异常,子类也不可以抛出异常。

三、如何抛出异常

  1. 格式:
  • 方法名(方法参数列表) throws 异常类名{

                    throw new 异常类名();

                     }

  2.抛出异常步骤

    1)找到一个合适的异常类;

    2)创建这个类的一个对象;

    3)将对象抛出。

  3.创建异常类:有时候我们并不能找到一个合适的异常类,我们又想抛出异常怎么办呢?创建自己的异常类就是必行的一件事情了。下面介绍创建自己异常类的一般要求。

    1)定义一个派生于Exception的类,或者派生于Exception子类的类

    2)定义两个构造器,一个是默认的构造器,一个是带有详细描述信息的构造器。

需要注意一下的java.lang.Throwable中有Throwable()和Throwable(String message)以及String getMessage()三个关于此处的方法。

四、捕获异常

书中说有些异常必须捕获,特么这是废话,那么是是那些异常呢?

通常我们应该捕获那些知道如何处理的的异常,将那些不知道如何处理的异常继续进行传递。

必须捕获的异常是:为了使子类能够抛出比父类更加特定的受查异常时,就必须使用捕获异常的方法。

捕获异常的常用格式:

允许有多个catch语句捕获不同的异常

e.getMessage()(获得详细异常信息)与e.getClass().getName()(获得异常对象的实际类型)

转载于:https://www.cnblogs.com/Sword007/p/9711770.html

你可能感兴趣的文章
P1373 小a和uim之大逃离 四维dp,维护差值
查看>>
NOIP2015 运输计划 树上差分+树剖
查看>>
P3950 部落冲突 树链剖分
查看>>
读书_2019年
查看>>
读书汇总贴
查看>>
微信小程序 movable-view组件应用:可拖动悬浮框_返回首页
查看>>
MPT树详解
查看>>
空间分析开源库GEOS
查看>>
RQNOJ八月赛
查看>>
前端各种mate积累
查看>>
jQuery 1.7 发布了
查看>>
Python(软件目录结构规范)
查看>>
Windows多线程入门のCreateThread与_beginthreadex本质区别(转)
查看>>
Nginx配置文件(nginx.conf)配置详解1
查看>>
linux php编译安装
查看>>
name phone email正则表达式
查看>>
721. Accounts Merge
查看>>
「Unity」委托 将方法作为参数传递
查看>>
重置GNOME-TERMINAL
查看>>
redis哨兵集群、docker入门
查看>>