Java try-catch块Java尝试块Java试一试块用于包含可能引发异常的代码。它必须在方法中使用。 如果try块中的特定语句发生异常,则块代码的其余部分将不会执行。因此,建议不要将代码保存在不会抛出异常的try块中。 Java try块后面必须跟catch块或finally块。 Java try-catch语法try-finally块的语法Java捕获块Java catch块通过在参数中声明异常类型来处理异常。声明的异常必须是父类异常(即exception)或生成的异常类型。但是,较好的方法是声明生成的异常类型。 catch块只能在try块之后使用。您可以使用多个catch块和一个try块。 Java try-catch块的内部工作![]() JVM首先检查异常是否被处理。如果不处理异常,JVM提供一个默认的异常处理程序,执行以下任务:
但如果应用程序程序员处理异常,则应用程序的正常流程将得到维护,即执行其余代码。 没有异常处理的问题让我们试着理解如果不使用try-catch块会出现什么问题。 示例1TryCatchExample1.java 输出: java.lang. arithmeexception: / by 0 如上例所示,代码的其余部分没有执行(在这种情况下,代码的其余部分没有打印语句)。 在异常之后可能有100行代码。如果不处理异常,则异常下面的所有代码都不会执行。 异常处理解决方案让我们看看java try-catch块对上述问题的解决方案。 示例2TryCatchExample2.java 输出: java.lang. arithmeexception: /其余代码为零 如上例所示,代码的其余部分执行,即代码的其余部分打印语句。 示例3在本例中,我们还将代码保存在一个try块中,该块不会抛出异常。 TryCatchExample3.java 输出: java.lang. arithmeexception: / by 0 在这里,我们可以看到,如果try块中发生异常,其余的块代码将不会执行。 示例4在这里,我们使用父类异常处理异常。 TryCatchExample4.java 输出: java.lang. arithmeexception: /其余代码为零 示例5让我们看一个在异常时打印自定义消息的示例。 TryCatchExample5.java 输出: 不能除以0 例子6让我们看一个在catch块中解决异常的示例。 TryCatchExample6.java 输出: 25 例7在本例中,除了try块,我们还将异常代码包含在catch块中。 TryCatchExample7.java 输出: java.lang. arithmeexception: / by 0 在这里,我们可以看到catch块不包含异常代码。因此,在try块中包含异常代码,并仅使用catch块处理异常。 示例8在本例中,我们使用不同类型的异常类(ArrayIndexOutOfBoundsException)处理生成的异常(算术异常)。 TryCatchExample8.java 输出: java.lang. arithmeexception: / by 0 例9让我们看一个处理另一个未检查异常的示例。 TryCatchExample9.java 输出: arrayindexoutofboundsexception:剩下的10段代码 示例10让我们看一个处理受控异常的例子。 TryCatchExample10.java 输出: 文件保存成功
下一个话题
java中的多重捕获块
|