美文网首页互联网科技Java码农的世界
Java编程学习:使用Java创建自己的异常子类

Java编程学习:使用Java创建自己的异常子类

作者: 433c801e5456 | 来源:发表于2019-06-10 11:13 被阅读2次

尽管Java的内置异常处理大多数常见错误,你也许希望建立你自己的异常类型来处理你所应用的特殊情况。这是非常简单的:只要定义Exception的一个子类就可以了(Exception当然是Throwable的一个子类)。你的子类不需要实际执行什么——它们在类型系统中的存在允许你把它们当成异常使用。

Exception类自己没有定义任何方法。当然,它继承了Throwable提供的一些方法。因此,所有异常,包括你创建的,都可以获得Throwable定义的方法。这些方法显示在表10-3中。你还可以在你创建的异常类中覆盖一个或多个这样的方法。

image.png

表 10-3 Throwable 定义的方法

下面的例子声明了Exception的一个新子类,然后该子类当作方法中出错情形的信号。它重载了toString( )方法,这样可以用println( )显示异常的描述。

// This program creates a custom exception type.
class MyException extends Exception {
    private int detail;
    MyException(int a) {
        detail = a;
    }

    public String toString() {
        return "MyException[" + detail + "]";
    }
}

class ExceptionDemo {
    static void compute(int a) throws MyException {
        System.out.println("Called compute(" + a + ")");
       if(a > 10)
          throw new MyException(a);
       System.out.println("Normal exit");
    }

    public static void main(String args[]) {
       try {
           compute(1);
           compute(20);
        } catch (MyException e) {
            System.out.println("Caught " + e);
        }
    }
}

该例题定义了Exception的一个子类MyException。该子类非常简单:它只含有一个构造函数和一个重载的显示异常值的toString( )方法。ExceptionDemo类定义了一个compute( )方法。该方法抛出一个MyException对象。当compute( )的整型参数比10大时该异常被引发。

main( )方法为MyException设立了一个异常处理程序,然后用一个合法的值和不合法的值调用compute( )来显示执行经过代码的不同路径。下面是结果:

Called compute(1)
Normal exit
Called compute(20)
Caught MyException[20]

如果你现在也在学习java,在入门学习java的过程当中缺乏系统的学习教程,或者说缺乏一个交流技术的地方,你可以申请加入我的Java学习交流qun:六四一,一二一,九四八。里面还有我这几年整理的java学习手册,面试题,开发工具,PDF文档教程,你可以自行去下载。

相关文章

  • Java编程学习:使用Java创建自己的异常子类

    尽管Java的内置异常处理大多数常见错误,你也许希望建立你自己的异常类型来处理你所应用的特殊情况。这是非常简单的:...

  • Java集合类的学习

    为什么要学习Java集合类? 当我们用java编程的时候,经常使用int[] a=new int[50]; 去创建...

  • Java 异常处理总结

    Java 异常机制 Java 异常分为检查异常和非检查异常,所有RuntimeException的子类都是非检查异...

  • enum(枚举)

    创建枚举类型要使用 enum 关键字,隐含了所创建的类型都是 java.lang.Enum 类的子类(java.l...

  • Java(六) 异常

    Java 中的异常处理 在Java 中 通过 Throwable及其子类描述各种不同的异常类型 Throwab...

  • Java进阶

    注:采转归档,自己学习查询使用 Java进阶01 String类Java进阶02 异常处理Java进阶03 IO基...

  • Java 面试问题系列四(基础)

    1、Java 中异常机制。 Java 中所有异常都是Throwable的子类,他的直接子类有两个,一个是Error...

  • Android学习路线

    第一阶段 Java面向对象编程 Java开发环境搭建 Java语言编程基础 Java异常处理 Ja...

  • Java程序常见异常及处理汇总

    Java异常结构分支图 常见异常总结图 Java中异常分类 Throwable类有两个直接子类: 1.Except...

  • java中四大特性继承

    Java 继承 继承的概念 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。 继承就是子类...

网友评论

    本文标题:Java编程学习:使用Java创建自己的异常子类

    本文链接:https://www.haomeiwen.com/subject/thgaxctx.html