zoukankan      html  css  js  c++  java
  • 自己定义的Excetpion继承哪个异常有什么讲究?[待解答]

    try catch的地方需要用到一个自定义的DBException,如下:

        

    于是我就自定义了一个DBException,继承Excetpion,以父类Exception构造器创建构造器:

    DBException.java:

     1 package com.tt.bookstore.exception;
     2 
     3 public class DBException extends Exception {
     4 
     5     /**
     6      * 
     7      */
     8     private static final long serialVersionUID = 1L;
     9 
    10     public DBException() {
    11         super();
    12         // TODO Auto-generated constructor stub
    13     }
    14 
    15     public DBException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
    16         super(message, cause, enableSuppression, writableStackTrace);
    17         // TODO Auto-generated constructor stub
    18     }
    19 
    20     public DBException(String message, Throwable cause) {
    21         super(message, cause);
    22         // TODO Auto-generated constructor stub
    23     }
    24 
    25     public DBException(String message) {
    26         super(message);
    27         // TODO Auto-generated constructor stub
    28     }
    29 
    30     public DBException(Throwable cause) {
    31         super(cause);
    32         // TODO Auto-generated constructor stub
    33     }
    34 
    35     
    36     
    37 }

    这时getConnection()函数里调用DBException处显示异常:

    所以将DBException换成继承SQLException,以父类SQLException构造器为构造器:

    调用DBException处仍然显示异常,于是改用继承RuntimeException,以父类构造器创建构造器:

    此时调用DBException处正常,这引发一个疑惑:自定义的Exception有什么讲究呢?

  • 相关阅读:
    计算机体系结构的铁律(iron law)
    PHP 画图——使用jpgraph画图
    理解Paxos Made Practical
    【bzoj1015】【JSOI2008】【星球大战】【并查集+离线】
    Spark调研笔记第3篇
    hduoj2094产生冠军
    使用HD/IDE层的ioctl接口获取磁盘容量get_hdd_max_sector
    给GridView设置行高
    tomcat的一些简单配置
    【JavaScript】--JavaScript总结一览无余
  • 原文地址:https://www.cnblogs.com/TTTTT/p/6472802.html
Copyright © 2011-2022 走看看