为了账号安全,请及时绑定邮箱和手机立即绑定

java自定义异常类===代码问题

代码:
package yichang;
public class Nuli{
 public static void main(String[] args){
  Nuli one = new Nuli();
  
  try{
   one.shuchu();
  }catch(Xinde e){
   System.out.println("123");
   e.printStackTrace();
  }
 }
 public void shuchu() throws Xinde{
  int a = 10;
  int b = 0;
  if(a == 10){
   a = a/b;
  }
 }
}

自定义异常类:

package yichang;

public class Xinde extends Exception {
  public Xinde(String me){
   super(me);
  }
}

其它都正常,就是不输出  123,哪位大神帮忙看看,谢谢了

正在回答

6 回答

https://img1.sycdn.imooc.com//5c1f5cdf0001fd6304490602.jpg你觉得如何?

0 回复 有任何疑惑可以回复我~


你的异常类呢

0 回复 有任何疑惑可以回复我~

这个可以输出123

0 回复 有任何疑惑可以回复我~

package project6.immoc3;


public class show {


public static void main(String[] args) {

// TODO Auto-generated method stub

show mo=new show();

try{

mo.show1();

}catch(Exception e){

System.out.println("输出异常123");

e.printStackTrace();

}

}

public void show1() throws Exception{

int a=10;

int b=0;

if(a==10){

a=a/b;

}

}

}


0 回复 有任何疑惑可以回复我~

package com.test;

public class ExceptionTest {

    public static void main(String[] args) {
        ExceptionTest one = new ExceptionTest();
        try {
            one.shuchu();
        } catch (Exception e) {
            System.out.println("123");
            e.printStackTrace();
        }
    }

    public void shuchu() {
        int a = 10;
        int b = 0;
        if (a == 10) {
            a = a / b;
        }
    }
}

0 回复 有任何疑惑可以回复我~
#1

慕粉1606461256 提问者

} catch (Exception e) { 为什么这个地方的Exception换成自定义异常类就不输出123呢?
2017-03-25 回复 有任何疑惑可以回复我~
#2

qq_梦盈华尔兹_0 回复 慕粉1606461256 提问者

因为这里我们用的是try-catch,所以自定义就相当于我所调用的函数
2017-07-01 回复 有任何疑惑可以回复我~
#3

qq_Takeiteasy_2 回复 慕粉1606461256 提问者

它捕获的是算术异常,而你自定义的异常类跟算术异常这个类的关系是,你的类可以说是算术类的叔叔,所以到catch的时候无法处理,但换成Exception时,Exception是你定义类的父类。我也不知道该怎么重新写一个算术异常覆盖原来的。。好像那样做也没什么意义,我写了一个可以捕获你定义的异常类的代码,放评论区了。
2018-12-23 回复 有任何疑惑可以回复我~

public void shuchu() throws Xinde{
      int a = 10;
      int b = 0;
      if(a == 10){
       a = a/b;
      }
     }

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

java自定义异常类===代码问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信