问答详情
源自:1-5 Java 中的异常抛出以及自定义异常

自定义异常的使用

package ImoocException;


public class my_Exception extends Exception {

/**

*/

private static final long serialVersionUID = 1L;

public my_Exception() {

System.out.println("使用了这个自定义的类1!");

}

public my_Exception(String str) {

super(str);

System.out.println("使用了这个自定义的类2!");

}

public void devide(int a,int b) throws Exception {

if(b==0) {

throw new my_Exception("被除数不能为0");

}

else {

System.out.println("it is ok!");

}

}

public static void main(String[] args)throws Exception {

// TODO Auto-generated method stub

ImoocException  imooc=new ImoocException ();

try {

imooc.devide(10, 0);

}

catch(my_Exception e) {

   System.out.println("异常抛出!");

}

}


}


最后结果还是出来

Exception in thread "main" java.lang.Exception

at ImoocException.ImoocException.devide(ImoocException.java:6)

at ImoocException.my_Exception.main(my_Exception.java:29)

这是怎么回事?

提问者:qq_晨子_1 2018-05-06 19:23

个回答

  • qq_浅蓝伤痕_0
    2018-05-26 16:23:33

    public static void main(String[] args)throws Exception 这里抛出异常  

    mian方法是程序的起点  在抛出只能交给JVM处理  相当于自己没有捕获异常  没有写try---catch

  • bright_cui
    2018-05-06 20:47:19

    public static void main(String[] args)throws Exception

    这里不需要抛异常了吧

    public void devide(int a,int b) throws Exception 是不是要改成这样

    public void devide(int a,int b) throws my_Exception