2018年11月17日(星期六)  农历:戊戌年十月初十

作者:三年。分类: JAVA

java自定义Exception

package cxm;

public class testException {

public static void main(String[] args) {

try{

testException myclass=new testException();

myclass.throwsexception();

}catch(Exception e){

System.out.println(e.toString());

e.printStackTrace();

}

}

public void throwsexception()throws Exception

{

throw new newExecption("错误");

}

public class newExecption extends Exception{

public newExecption(String message){

super(message);

}

}

}

异常设计原则:

异常表示没有遵守契约。如果一个事件表示了"异常条件"或者"没有遵守契约",那么,Java程序所要做的就是抛出异常。

异常的类型:

检查型异常checked和非检查型异常non-checked(运行时异常,RuntimeException和它的子类)。

一般而言,表示类的误用的异常应该是非检查型异常。String类的chartAt()方法抛出的 StringIndexOutOfBoundsException就是一个非检查型异常。SUN公司并不打算强制客户程序员每次调用charAt(int index)时都检查index参数的合法性。

另一方面,java.io.FileInputStream类的read()方法抛出的是IOException,这是一个检查异常。这个异常 表明尝试读取文件时出错了。这并不意味着客户程序员错误地使用了FileInputStream类,而是说这个方法无法履行它地职责,即从文件中读出下一 个字节。FileInputStream类地设计者认为这个意外情况很普遍,也很重要,因而强制客户程序员处理之。

意外情况是方法无法履行职责,而且很普遍的或者很重要的,调用者必须采取措那抛出检查型异常,反之,抛出非检查型异常。

自定义异常类

为了很好的定位java程序的错误,加强系统的健壮性,避免NullPointerException错误的出现几率,需要建立一套完善的Java自定义Exception错误体系。

自定错误命名规范:AH+错误类型+Exception

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

已有 0/1053 人参与

发表评论:



手Q扫描加入Java初学者群