斷言在Java
斷言設施增加在J2SE 1.4 。為了支持這種設施J2SE 1.4 增加了主題詞斷言對語言, 和AssertionError 組。斷言檢查必須是真實的在節目運行時間施行期間的一個布爾被鍵入的表示。斷言設施可能使能或功能失效在運行時間。
宣稱斷言
斷言聲明有二個形式依照下面被給
斷言表示;
斷言expression1: expression2;
第一形式是斷言的簡單的形式, 當第二個形式採取其它表示。在兩個形式布爾表示式代表必須是評估配齊運行時間的情況。
如果情況評估對假並且斷言使能, AssertionError 將被投擲在運行時間。
使用簡單的斷言形式的一些例子是如下。
斷言價值> 5;
斷言accontBalance > 0;
斷言isStatusEnabled();
必須被斷言運行時間的表示必須是布爾價值。在第三個例子isStatusEnabled() 必須退回布爾價值。如果情況評估配齊, 施行通常繼續, 否則AssertionError 被投擲。
隨後而來的節目使用斷言的簡單的形式
//AssertionDemo.java
類AssertionDemo{
公開靜止空main(String 的args[]){
System.out.println(withdrawMoney(1000,500));
System.out.println(withdrawMoney(1000,2000));
}
公開雙重withdrawMoney(double 平衡, 雙重amount){
斷言平衡> = 數額;
退回平衡? 數額;
}
}
在以上給出的例子, 主要方法叫withdrawMoney 方法以平衡和數額作為論據。withdrawMoney 方法有證實的一個斷言聲明是否平衡是磨絲器比或均等共計被撤出。在第一個電話方法將執行沒有任一例外, 但在第二個電話它AssertionError 被投擲如果斷言使能在運行時間。
使能/使無能力斷言
由缺省斷言不使能, 但是編譯器抱怨如果斷言被使用作為標識符或標籤。以下命令將編寫AssertionDemo 以斷言使能。
javac?source 1.4 AssertionDemo.java
收效的AssertionDemo 組文件將包含斷言代碼。
由缺省斷言失去能力在Java 運行時間環境裡。論據?eanbleassertion 或?ea 意志使能斷言, 當?disableassertion 或?da 使斷言失去能力在運行時間。
以下命令將跑AssertionDemo 以斷言使能。
Java?ea AssertionDemo
或
Java?enableassertion AssertionDemo
斷言的第二個形式
斷言的第二個形式採取其它表示作為論據。
句法是,
斷言expression1: expression2;
那裡expression1 是情況, 必須評估配齊在運行時間。
這個聲明是等效的
斷言expression1: 投擲新AssertionError(expression2);
注: AssertionError 是未經檢查的例外, 因為它被繼承從錯誤類別。
這裡, expression2 必須評估對一些價值。
AssertionError 不提供有用的消息因此這個形式可能是有用顯示某一情報消息對用戶。
Rahim Vindhani
應用Develper [ 應用開發& Webservices ]
IBM 全球服務, pune, 印度
電子郵件: rahim.vindhani@gmail.com
網:
http://www.rahim.co.nr
文章來源: Messaggiamo.Com
Related:
» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker
網管得到HTML代碼
加上這條到你的網站!
網站管理員提交你的文章
無須登記!填寫好的表格和你的文章是在 Messaggiamo.Com 目錄!