SWT 有一個定義完善的策略來觸發錯誤和異常狀況。異常狀況可能會在平台間一致地 觸發。不過,某些錯誤是特定平台上 SWT 實作方式特有的。
SWT 可觸發三種類型的異常狀況:IllegalArgumentException、 SWTException 和 SWTError。 應用程式在呼叫 SWT 時不應該需要捕捉任何其他種類的異常狀況或錯誤。
附註:如果 SWT 擲出了這三種以外的其他任何異常狀況,則視為 SWT 實作方 式中的錯誤。
完成任何的其他工作之前,檢查傳入 SWT API 方法中的引數狀態和範圍是否適當。 當 IllegalArgumentException 判定引數無效時,便會被擲出。
SWT 在所有平台間一致地擲出這個異常狀況。在一個平台上導致 IllegalArgumentException 的程式碼也會在另一個平台上導致相同的異常狀 況。
當 SWT 內部發生可回復的錯誤時,會擲出 SWTException。 錯誤碼和訊息文字提供問題的進一步說明。
SWT 在所有平台間一致地擲出這個異常狀況。在所有平台上,SWT 擲出此異常狀況後 會保持在已知穩定的狀態中。 例如,當從非 UI 執行緒建立 SWT 呼叫後會擲出這個異常狀況。
當 SWT 內發生無法復原的錯誤時,會擲出 SWTError。
當基礎的平台呼叫失敗、SWT 保留在未知狀態中,或 SWT 已知有無法復原的錯誤( 例如執行的平台圖形資源不足)時,SWT 會擲出這個錯誤。
一旦發生 SWT 錯誤時,很少有應用程式可用來更正問題。在應用程式的正常操作過 程中,不應該發生這些錯誤,而高可靠性應用程式仍應快取及報告這些錯誤。