Java 忽略异常

Zeeshan Afridi 2023年10月12日
  1. Java 中的异常处理
  2. 忽略 Java 中的异常
  3. Java 异常的常见示例
Java 忽略异常

在计算机编程中,在软件测试过程中,我们不可能涵盖每一个输入;相反,我们测试软件的一些通用场景、单元和条件路径。但是,在某些情况下,你无法防止发生运行时错误并被终止,除非你使用了适当的异常处理机制。

但是多亏了 Java 编程,它提供了异常处理等概念,你可以防止运行时错误并在终止或崩溃程序之前处理它们。

Java 中的异常处理

异常处理是一种帮助开发人员在终止程序之前处理错误的技术。它用于处理程序中可能导致错误的异常情况,以维持程序的正常流程。

但是,它仍然需要开发人员和测试人员的技能,即他们如何专业和高效地使用异常处理技术来忽略 Java 中的异常。

我们可以使用特殊的关键字来处理 Java 中的异常:trycatchfinallythrowsthrow

假设我们有一个将两个数字相除的小程序。

package codes;

public class Codes {
  public static void main(String[] args) {
    System.out.println(12 / 2);
    System.out.println(12 / 1);
    System.out.println(12 / 0);

    System.out.println("This is the line after the exception");
  }
}

输出:

6
12
Exception in thread "main" java.lang.ArithmeticException: / by zero
	at codes.Codes.main(Codes.java:10)

在上面的例子中,12 先除以 2、1,然后是 3。前两个数字 2 和 1 已经平滑地除掉了数字 12,没有产生任何错误,但是最后一位数字 0 却导致了异常,程序异常终止。

原因是我们不能用 0 来除任何数字,所以编译器抛出了一个运行时错误并终止了程序。如你所见,由于异常终止,程序的最后一行没有执行。

忽略 Java 中的异常

正如我们在上面的例子中看到的,我们通过将一个数字除以 0 得到了一个 ArithmeticException。但是在 Java 中有一些方法可以忽略这些异常或异常情况。

我们再来看看上面的例子,尽量忽略异常,保持程序的正常流程。

package codes;

public class Codes {
  public static void main(String[] args) {
    try {
      System.out.println(12 / 2);
      System.out.println(12 / 1);
      System.out.println(12 / 0);
    } catch (ArithmeticException e) {
      System.out.println("Division by Zero() isn't a valid expression\n"
          + "The type of this exception is " + e);
    }
    System.out.println("This is the line after the exception");
  }
}

输出:

6
12
Division by Zero() isn't a valid expression
The type of this exception is java.lang.ArithmeticException: / by zero
This is the line after the exception

在这个程序中,我们使用 try-catch 块来忽略 Java 程序中的异常。基本上,在 try 块中,我们有可能导致运行时错误的代码,如果在 try 块中发现任何异常,则 catch 块用于显示任何要解释的自定义消息例外。

在这种情况下,前两条语句运行顺利,第三条语句导致由 try-catch 处理的异常,并打印最后一行代码。

Java 异常的常见示例

在 Java 中,我们有不同的异常类型;每个人都对场景或条件负责。以下是一些最常见的例外情况。

  1. ClassNotFoundException
  2. NoSuchMethodException
  3. NullPointerException
  4. ArrayIndexOutOfBoundsException
  5. IllegalStateException
  6. ArithmeticException
  7. FileNotFoundException
作者: Zeeshan Afridi
Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

相关文章 - Java Exception