異常分類
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
/*
java.lang.Throwable:類是Java語言中所有錯誤或異常的超類
Exception:編譯器異常,進行編譯(寫代碼)java程序出現的問題
RuntimeException:運行期異常,java程序運行過程中出現的問題
異常就相當於程序得了一點小毛病(感冒、發燒),把異常處理掉,程序可以繼續執行(吃點藥,繼續革命工作)
ERROR:錯誤
錯誤相當於程序得了一個無法治癒的毛病(艾滋),必須修改源代碼,程序才能執行
*/
public class Main {
public static void main(String[] args) {
//Exception:編譯器異常,進行編譯(寫代碼)java程序出現的問題
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//用來格式化日期
Date date = null;//把字符串格式的日期,解析爲Date格式的日期
try {
date = sdf.parse("1999-09-09");
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date);//Thu Sep 09 00:00:00 CST 1999
//RuntimeException:運行期異常,java程序運行過程中出現的問題
int[] arr = {1, 2, 3};
try{
//可能會出現異常的代碼
System.out.println(arr[3]);
}catch (Exception e){
//異常的處理邏輯
System.out.println(e);//java.lang.ArrayIndexOutOfBoundsException: 3
}
/*
ERROR:錯誤
java.lang.OutOfMemoryError: Java heap space
內存溢出的錯誤,創建的數組太大了,超出了給JVM分配的內存
*/
int[] a = new int[1024 * 1024 * 1024];
System.out.println("後續代碼");
}
}