zoukankan      html  css  js  c++  java
  • 异常初阶

    一、概述

    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()(获得异常对象的实际类型)

  • 相关阅读:
    iOS的流畅性
    iOS系统的特点-iOS为什么运行更流畅
    安卓怎么不如ios运行流畅
    关于后台动态模板添加内容的总结 Builder使用
    PHP中用下划线开头的变量含义
    php 变量名前加一个下划线含义
    ThinkPHP 模版中的内置标签
    PC端页面如何调用QQ进行在线聊天?
    手机web页面调用手机QQ实现在线聊天的效果
    THINKPHP框架的优秀开源系统推荐
  • 原文地址:https://www.cnblogs.com/Sword007/p/9711770.html
Copyright © 2011-2022 走看看