`
endual
  • 浏览: 3509005 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java 基础(1) 自定义的异常处理

    博客分类:
  • java
 
阅读更多

有时候,我们要自己定义异常处理的类,如下:

 

异常分两种,一张是运行时的异常  还有一个是不是运行时期的异常。

 

总的父类异常是 Exception 这个类 然后被运行时异常类runtimeException和其他类基础

而RunTimeException 这个类被其他类继承的话,那么这样的异常就是运行期的异常,其他的直接基础Exception这个异常了。

 

 

  举例说明:

 

 

这个类是基本的类就是自己定义的父类异常是非运行事情的异常,那么我在使用自己定义的

异常类的时候,继承这个类

package endual.utils;

public class EndualException extends Exception {

    public EndualException (String message) {
        super(message) ;
       
       
    }
   
    public EndualException(String message,int id) {
       
        super(message + id) ;
       
    }
   
   
}

 

 

比如的话:我这个异常是基础自己定义的父类的异常,这个是用于针对的是parse有关的异常

当然你也可以定义好多类似这样的异常类去处理特定的异常。。。。。,当然都需要继承自己首先封装好的EndualException这个异常类的

 

public class ParserBaseException extends EndualException {

    public ParserBaseException(String message) {
        super(message);
       
    }
   
    public ParserBaseException(String message,int id) {
       
        super(message + id) ;
       
       
       
    }
   

    /**
     *
     */
    private static final long serialVersionUID = 1L;

   
}

 

 

这样就自己创建了自己的异常类了,那么我们来怎么使用呢 ?

 

package endual.exception;

public class TestBaseException {

    public static void main(String[] args) {
       
        String message = "" ;
        int id = 1 ;
        TestBaseException tbe = new TestBaseException() ;
        tbe.testException(message, id) ;
       
    }
   
   
    public void testException(String message, int id) {
       
        if (id == 1) {
           
            String messagex = "this is the erro message " ;
            ParserBaseException pbe = new ParserBaseException(messagex); //创建这个异常类,然后
            try {
                throw pbe ;  //然后抛出这个异常就可以了
            } catch (ParserBaseException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
           
        }
       
       
       
    }
   

}

 

 

//怎么使用

1.我们要用自己定义的异常类,那么肯定的,我们需要自己定义这样的异常类的对象。

2.其二就是用关键词trow这个关键进行抛出这个异常对象就OK了。

3.在抛出前,你首先要定义一些自己的话,String message 这样就可以将自己说的饿话抛出去。

***********************************************************************************

 

有人说了,那我不想自己定义的话,直接像Sun的jar包自己定义的那种类型的,就是有异常自己会指定的抛出去怎么写呢?

那么你可以看源代码如果想要标准点。还有一点那么我来实现下怎么个默认抛出已经定义好的异常。

 

 

public class MyException1 extends Exception {

 

 

              public MyException ()

{

              String message = "这个是myexception1的异常 你看见了么" ;

               super(message)

    }

 

}

 

类似于这样,当然了,这样的异常因为你同一个无参数的构造方法在同一个类中只有一个,如果你想定义10个默认了的异常抛出语句的类,那么你要自己写10这样的类了。

 

 

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

 

虽然感觉到自己的有强大的处理错误和自己的学习的能力,但是看了好多的面试笔试的题目,我感觉都不行。

希望2012年找到自己希望的工作吧。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics