要注意一點:異常機制處理異常是要付出代價的,即異常處理的代碼比無異常處理的要慢好多倍。
JAVA的異常機制
在面向對象的世界里,一切都是對象,JAVA的異常也不例外。API中異常類的“始祖”是 Throwable 類,有 Exception 類和 Error 類直接繼承Throwable 。Error是很嚴重的,是不可挽救的,我們一般是通過繼承Throwable 或Exception 來定義自己的異常類。
先看看API(這里是從1.5摘抄的)里的兩個異常類是怎樣的?
import java.io.*;
public class Throwable implements Serializable ...{
/** *//** use serialVersionUID from JDK 1.0.2 for interoperability */
private static final long serialVersionUID = -3042686055658047285L;
/** *//**
* Native code saves some indication of the stack backtrace in this slot.
*/
private transient Object backtrace;
private String detailMessage;
private Throwable cause = this;
private StackTraceElement[] stackTrace;
public Throwable() ...{
fillInStackTrace();
}
文章來源于領測軟件測試網 http://www.kjueaiud.com/