尝试自定义异常。
一、知识点
抛出一个异常,自定义信息。
1 2 3 4 5 6 7 8 9 10 11 12 |
package error_dao; public class throws_and_throw { public void divide(int one,int two) throws Exception { if (two == 0) { throw new Exception("两数相除除数不能为0啊兄弟"); } else { System.out.println("两数相除,结果为:"+one/two); } } } |
具体使用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
package error_dao; public class throws_and_throw { public void divide(int one,int two) throws Exception { if (two == 0) { throw new Exception("两数相除除数不能为0啊兄弟"); // 这里抛出了一个异常之后,就跳到catch处理块中去了 } else { System.out.println("两数相除,结果为:"+one/two); } } public void divide2() { try{ divide(5, 0); } catch(Exception e) { System.out.println(e.getMessage()); } } public static void main(String[] args) { throws_and_throw t = new throws_and_throw(); t.divide2(); } } |
结果为:
1 |
两数相除除数不能为0啊兄弟 |
尝试自定义一个异常类:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
package error_dao; public class drunk_excption extends Exception{ // 自定义异常要么继承java类库中意思相近的异常 // 要么直接继承与java的所有异常的基类Exception类 public drunk_excption() // 有了一个含参数的构造器,编译器就不会自动的为自定义异常类创建一个无参的构造器 // 我们有时候需要用到无参的情况,所以必须手动添加无参的构造器 { } public drunk_excption(String message) // 可以添加一个构造器 // 我们只需要在这个含参数的构造器中调用他的父类也就是Exception的构造方法也就可以 { // 把参数传进去 super(message); } } |
自定义drunk_excption.java异常类后,直接throw抛出也可以起到相同的效果。
二、总结
记录一下。