Java中的異常體系結構:java
全部異常類:url
都是這個類的子類: java.lang.Throwable – 能夠拋出的。spa
The Throwable
class is the superclass of all errors and exceptions in the Java languagecode
全部的錯誤,異常父類都是Throwable.ci
package cn.demo02;it
import java.util.Scanner;io
/**編譯
* 對於任意的Java程序來講,默認的最多使用64Mclass
* 可是能夠進行在啓動時設置參數分配:最多1G。import
* @author Administrator
*
*/
public class Demo04_Error {
public static void main(String[] args) {
byte[] bs = new byte[1024*1024*600];
System.err.println("Over...");
new Scanner(System.in).nextLine();//等等用戶的輸入
}
}
1 :運行時異常 -【編譯時不檢查的異常】
只有在運行時出錯錯誤纔會檢查的異常。
這種
能夠處理,也能夠不處理。
2:編譯時異常 – 編譯時檢查的異常
在編譯時 - *.java –> *.class時有可能出錯,而你沒有處理[聲明,捕獲]將會讓程序編譯就不經過。
必需要處理:
聲明
public void say() throws Exception {
//讀取一個外問的文件
InputStream in = new FileInputStream("d:/a/a.txt");
}
處理:捕獲
public void say() {
try {
// 讀取一個外問的文件
InputStream in = new FileInputStream("d:/a/a.txt");
} catch (Exception e) {
System.err.println("處理部分");
}
}
在出出異常時:
兩種處理方式 :
1:拋出異常。
拋出大於等於 的異常。
public static void main(String[] args) throws SQLException,IOException {
URL url = new URL("http://www.baidu.com");
}
2:處理
try {
URL url = new URL("http://www.baidu.com");
} catch (ArithmeticException e) {
} catch (Exception e) {
}