错误:无法在Java中找到Exceptions的符号

时间:2014-04-27 23:01:28

标签: java exception

我正在用Java编写一个非常简单的程序,试图用用户输入的数字除以10并捕获DivideByZeroException。这是代码:

public class EnhancedCatchExceptions6 {

    public static void main(String[] args) {

        System.out.println();

        for (int i = 0 ; i < i; i++) {

            try {
                int b = Input.getInt("Enter an integer to divide by:");
                divide(10, b);
                break;
            } catch (DivideByZeroException e) {
                System.out.println("Error: Divided by zero. Try again.\n");
            }
        }
    }

    public static int divide(int x, int y) throws DivideByZeroException {

        System.out.println();

        int result = 0;

        try {result = x/y;}
            catch (ArithmeticException e) {throw new DivideByZeroException(y);}

        return result;

    }
}

由于某种原因,返回错误:找不到每个'DivideByZeroException'的符号。如果我将DivideByZeroException更改为Exception,则不会返回该错误。当我用其他例外编写其他程序时,会出现同样的错误。

我不明白为什么会返回此错误,我将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:2)

最有可能发生这种情况,因为您忘记了import DivideByZeroException。更改类的第一行:

import your.package.name.DivideByZeroException;

你应该没事。当然,别忘了使用你的真实包装名称。

另一个猜测 - 如果你想要一个代表异常且带有JDK的类,而不是你自己的类,请考虑用DivideByZeroException替换ArithmeticException