java - 错误: cannot find symbol for Exceptions in Java

标签 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,它不会返回该错误。当我编写其他有其他异常的程序时,也会出现同样的错误。

我不明白为什么会返回此错误,如果有任何帮助,我将不胜感激。谢谢!

最佳答案

发生这种情况很可能是因为您忘记导入您的DivideByZeroException。更改类的第一行添加:

import your.package.name.DivideByZeroException;

你应该没问题。当然,不要忘记使用您的真实包名称。

另一种猜测 - 如果您想要一个代表异常并附带 JDK 的类,而不是您自己的类,请考虑将 DivideByZeroException 替换为 ArithmeticException

关于java - 错误: cannot find symbol for Exceptions in Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23330106/

相关文章:

java - 为什么我的字符串在 try/catch block 之后更改为旧的输入形式 Scanner (编辑 : calling method again)

exception - 将项目从.net Core 2.2迁移到3.0 Preview-7后,Swagger无法正常工作(引发异常)

Android 异常 - 未知来源(可能是小部件)

c# - 处理异常,我是否必须捕获每个特定的异常?

javascript - 使用 JavaScript 计算 VWAP

java - 如何将 scrollPane 放在 BoxLayout 上?

Java - 针对白名单的手动对象验证

java - 单例用于多种用途?

json - 为什么 ReSTLet 无法注册 JSON 转换器?

javascript - jQuery-UI:未捕获的语法错误:意外的标记