我想学习如何在 Java 中抛出一个 super 简单的异常。我有以下内容:
public Percolation(int N) // create N-by-N grid, with all sites blocked
{
if(N < 1)
throw new Exception("N must be greater than zero.");
grid = new boolean[N * N + 2];
dimension = N;
grid[0] = true;
grid[N+1] = true;
unionStruct = new QuickFindUF(N+2);
}
这不是编译,但这是我想要做的事情。执行此操作的正确语法是什么?
最佳答案
这是因为您抛出了一个已检查的异常而没有声明您抛出的异常。在您的情况下,您可能应该抛出一个派生自 RuntimeException 的异常,并且不会检查这些异常(这意味着您不必声明它们)。所以解决这个问题的两种方法是
throw new IllegalArgumentException("N must be greater than zero."); // unchecked
或
public Percolation(int N) throws Exception
关于java - 在 Java 中抛出简单异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4917351/