Tag: exception处理

运行时/已检查/未检查/错误/exception之间的差异

什么是运行时exception以及什么是选中/未选中的exception以及错误/exception之间的区别。为什么这么多类型? 相反,Java可能只是遵循一个简单的设计(只是尝试/捕获所有类型)来处理程序中的exception情况?

如何在调用Thread.sleep()时修复未处理exception的编译错误?

我是Java的新手,也是编程的新手(我知道直接进入Java可能并不是最好的主意。)而且无论我如何尝试在程序中添加暂停,我都会遇到错误。 我正在做一个简单的计数程序,并希望在每个数字之间添加一秒延迟,这是我到目前为止的代码: import java.lang.*; public class Counter { public static void main(String[]args) { int i; for (i = 0; i <= 10; i++) { Thread.sleep(1000); System.out.println(i); } System.out.println("You can count to ten."); } } 对Thread.sleep()的调用将无法编译。 javac编译器说,“未报告的exceptionInterruptedException;必须被捕获或声明被抛出”,Eclipse说,“未处理的exception类型InterruptedException”

已检查vs未经检查的exception

我研究过:然而,对于未经检查的exception,编译器不会强制客户端程序员捕获exception或在throws子句中声明它。 实际上,客户端程序员可能甚至不知道可能抛出exception。 例如,String的charAt()方法抛出StringIndexOutOfBoundsException 。 这是什么意思? 根据该代码,没有必要在代码中放置try catch块,但我已经看到编译器强制将代码放入try catch块。 我很困惑他们到底是什么?

如何循环用户输入直到输入整数?

我是Java的新手,我想继续询问用户输入,直到用户输入一个整数,这样就没有InputMismatchException了。 我已经尝试过这段代码,但是当我输入一个非整数值时,我仍然会遇到exception。 int getInt(String prompt){ System.out.print(prompt); Scanner sc = new Scanner(System.in); while(!sc.hasNextInt()){ System.out.println(“Enter a whole number.”); sc.nextInt(); } return sc.nextInt(); } 谢谢你的时间!