首页 > 代码库 > java基础---->Java中异常的使用(一)

java基础---->Java中异常的使用(一)

  今天我们大致学习一下java中关于异常的知识。

java异常的使用

一、java异常的一些说明

1、Throwable 类是Java 语言中所有错误或异常的超类(这就是一切皆可抛的东西)。它有两个子类:Error和Exception。2、Exception:它指出了合理的应用程序想要捕获的条件。Exception又分为两类:一种是CheckedException,一种是UncheckedException。这两种Exception的区别主要是CheckedException需要用try...catch...显示的捕获,而UncheckedException不需要捕获。通常UncheckedException又叫做RuntimeException。

 

 二、一些代码的了解异常

  • IllegalArgumentException是UncheckedException的异常。
public static int divide(int num1, int num2) {    if (num2 == 0) {        throw new IllegalArgumentException("除数不能为0"); // 这种异常是不会try...catch的    }    System.out.println("hello world");    return num1 / num2;}

运行的效果如下:

Exception in thread "main" java.lang.IllegalArgumentException: 除数不能为0    at com.chenhui.huhx.ExceptionTest.divide(ExceptionTest.java:11)    at com.chenhui.huhx.ExceptionTest.main(ExceptionTest.java:37)
  • IndexOutOfBoundsException是UncheckedException的异常。
public static void arraysOutbounds() {    int[] arrays = new int[]{2, 3, 5};    try {        System.out.println(arrays[4]);    } catch (IndexOutOfBoundsException e) {        System.out.println("数组越界错误");    }    System.out.println("数组异常之后的执行");}

运行的效果如下:

数组越界错误数组异常之后的执行
  • FileNotFoundException是checkedException的异常,这类异常必需try...catch或者throw。
public static void checkException() {    try {        throw new FileNotFoundException("文件找不到");    } catch (FileNotFoundException e) {        e.printStackTrace();    }    System.out.println("文件异常之后的执行");}

运行的效果如下:

java.io.FileNotFoundException: 文件找不到    at com.chenhui.huhx.ExceptionTest.checkException(ExceptionTest.java:29)    at com.chenhui.huhx.ExceptionTest.main(ExceptionTest.java:39)文件异常之后的执行

整个的测试文件如下:

技术分享
 1 package com.chenhui.huhx; 2  3 import java.io.FileNotFoundException; 4  5 /** 6  * Created by huhx on 2017-04-27. 7  */ 8 public class ExceptionTest { 9     public static int divide(int num1, int num2) {10         if (num2 == 0) {11             throw new IllegalArgumentException("除数不能为0"); // 这种异常是不会try...catch的12         }13         System.out.println("hello world");14         return num1 / num2;15     }16 17     public static void arraysOutbounds() {18         int[] arrays = new int[]{2, 3, 5};19         try {20             System.out.println(arrays[4]);21         } catch (IndexOutOfBoundsException e) {22             System.out.println("数组越界错误");23         }24         System.out.println("数组异常之后的执行");25     }26 27     public static void checkException() {28         try {29             throw new FileNotFoundException("文件找不到");30         } catch (FileNotFoundException e) {31             e.printStackTrace();32         }33         System.out.println("文件异常之后的执行");34     }35 36     public static void main(String[] args) {37 //        divide(3, 0);38 //        arraysOutbounds();39         checkException();40     }41 }
异常测试类

 

友情链接

  • intellj idea2017的破解方法:http://quanzhan.applemei.com/webStack/T1RnMw==

 

java基础---->Java中异常的使用(一)