大家好,又见面了,我是你们的朋友全栈君。 /*Exception中有一个特殊的子类异常RuntimeException(运行时异常)。 * RuntimeException非常特殊,它的的子类也可以直接抛出,不用声明。 * 1.如果在函数内容抛出该异常,函数上可以不用声明,编译通过。 * 2.如果函数上声明了该异常,调用者可以不用进行处理,编译一样能通过。 * 3.之所以不用在函数上声明,因为不需要让调用者处理。 * 4.当该异常发生时,希望程序停止,因为在运行时,出现了无法继续运算的的情况。 希望停止程序后,对代码进行修正。 * 5.自定义异常时,如果该异常的发生,无法继续进行运算,就让自定义异常继承RuntimeException. * 6.对于异常分为两种: * a.编译时被检测的异常。 * b.编译时不被检测的异常。(运行时异常。RuntimeException及其子类) */ class FuShuException extends RuntimeException//自定义异常类继承RuntimeException类 { FuShuException(String msg) { super(msg);//调用父类的构造函数 } } class Demo { int div(int a,int b) //throws FuShuException, ArithmeticException { if(b<0) throw new FuShuException(“出现了负数”);//抛出负数异常 if(b==0) throw new ArithmeticException(“被零除了”);//抛出除零异常 return a/b; } } public class ExceptionDemo5 { public static void main(String args[]) { Demo d=new Demo(); int x=d.div(4, -1); System.out.println(“x=”+x); System.out.println(“over”); } }
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/161463.html原文链接:https://javaforall.cn