首页 新闻 会员 周边

请教一个java异常案例,的基础问题

0
悬赏园豆:5 [已解决问题] 解决于 2014-10-20 16:35

根据教程案例写上的,逻辑上好像没错,为什么会报错?(我用的是java7版本jdk)

 

public static void main(String[] args) {
        System.out.println(test("5")+","
                +test(null)+","
                +test("")+","
                +test("A"));
        
    }
    public static int test(String str){
        try{
            char ch=str.charAt(0);
            if(ch<'0' || ch>'9'){
                throw new NotNumberException();//这里为什么报编译错误?
            }
            int n=ch-'0';
            return n;
        }catch(NullPointerException e){
            return 0;
        }catch(RuntimeException e){
            return 1;
        }catch(Exception e){//这里也报编译错误?是什么原因呢?
            return 2;
        }finally{
            return 8;
        }
    }
}
class NotNumberException extends Exception{
    
}

试了几遍,没弄明白错误的原因。这个案例就是一个对异常的一个全部演示,自己好像没有写错,不知道为什么报错? 求解
小小工程师的主页 小小工程师 | 初学一级 | 园豆:5
提问于:2014-10-20 13:08
< >
分享
最佳答案
0

试了一下,eclipse上没有报错

收获园豆:5
Tim-Tom | 菜鸟二级 |园豆:207 | 2014-10-20 15:56

嗯。我找到原因了。换了一个包,就没有错误,但是在原来的包,全部重新敲了一遍,还是报错...不知道为什么,什么原因。好像不是第一次出现这种问题了...谢谢你们,看你豆豆少一 点,这次豆豆就给你了,谢谢你们帮忙!

小小工程师 | 园豆:5 (初学一级) | 2014-10-20 16:35
其他回答(1)
0

你不就是要异常么,是什么错

draculav | 园豆:734 (小虾三级) | 2014-10-20 15:28

呃。。。是要异常,但不是要编译错误啊。那个,我找到原因了,我换了一个包,然后一个不差得敲了一遍,就没有编译错误。但是在那个包里,重新全敲了一遍,还是报错....谢谢你,花时间来帮忙,看!!!

支持(0) 反对(0) 小小工程师 | 园豆:5 (初学一级) | 2014-10-20 16:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册