我收到一个编译时错误消息:
不能抛出InputMismatchException类型的异常;异常类型必须是Throwable InputMismatchException.java的子类
据我所知,InputMismatchException是扫描程序在收到无效输入时抛出的异常,为什么然后此错误阻止我进行编译?
import java.util.*;
public class InputMismatchException
{
public static void main(String[] args)
{
boolean continueInput = true;
Scanner input = new Scanner(System.in);
do
{
try
{
System.out.println("Enter an integer: ");
int num = input.nextInt();
System.out.println("You entered: " + num);
continueInput = false;
}
catch (InputMismatchException e) //This is where the error occurs.
{
System.out.println("Enter an integer!");
input.nextLine();
}
}while(continueInput);
}
}
最佳答案
尝试为您的类(class)使用其他名称。如果已经有一个名为InputMismatchException
的类已经是异常类的名称,则会使编译器困惑。