真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JDK1.4特性assert的示例分析

這篇文章主要介紹了JDK1.4特性assert的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)專注于網(wǎng)站建設(shè)|成都企業(yè)網(wǎng)站維護(hù)|優(yōu)化|托管以及網(wǎng)絡(luò)推廣,積累了大量的網(wǎng)站設(shè)計與制作經(jīng)驗(yàn),為許多企業(yè)提供了網(wǎng)站定制設(shè)計服務(wù),案例作品覆蓋成都工商代辦等行業(yè)。能根據(jù)企業(yè)所處的行業(yè)與銷售的產(chǎn)品,結(jié)合品牌形象的塑造,量身定制品質(zhì)網(wǎng)站。

源代碼:

/**  * Simple examples of the use of the new assertion feature in JDK1.4  *  * @author S.Ritter 16/7/2001  **/ public class AssertExample {  public static void main(String[] args) {  int x = 10;  if (args.length > 0) {  try {  x = Integer.parseInt(args[0]);  } catch (NumberFormatException nfe) {  /* Ignore */ }  }  System.out.println("Testing assertion that x == 10");  assert x == 10:"Our assertion failed";  System.out.println("Test passed");  }  }

由于引入了一個新的關(guān)鍵字,所以在編譯的時候就需要增加額外的參數(shù),要編譯成功,必須使用JDK1.4的javac并加上參數(shù)´-source 1.4´,例如可以使用以下的命令編譯上面的代碼:

javac -source 1.4 AssertExample.java

以上程序運(yùn)行使用斷言功能也需要使用額外的參數(shù)(并且需要一個數(shù)字的命令行參數(shù)),例如:

java -ea AssertExample 1

程序的輸出為:

Testing assertion that x == 10 Exception in thread "main" java.lang.AssertionError: Our assertion failed  at AssertExample.main(AssertExample.java:20)

由于輸入的參數(shù)不等于10,因此斷言功能使得程序運(yùn)行時拋出斷言錯誤,注意是錯誤,這意味著程序發(fā)生嚴(yán)重錯誤并且將強(qiáng)制退出。斷言使用boolean值,如果其值不為true則拋出AssertionError并終止程序的運(yùn)行。

由于程序員的問題,斷言的使用可能會帶來副作用,例如:

boolean isEnable=false;  //...  assert isEnable=true;


這個斷言的副作用是因?yàn)樗薷某绦蜃兞康闹挡⑶覜]有拋出錯誤,這樣的錯誤如果不細(xì)心檢查很難發(fā)現(xiàn)。但是同時我們可以根據(jù)以上的副作用得到一個有用的特性,根據(jù)它測試是否將斷言打開了。

/**  * Simple examples test enable assertion feature in JDK1.4  *  * @author Cherami 25/4/2002  **/ public class AssertExample2 {  public static void main(String[] args) {  boolean assertEnable=false;  assert assertEnable=true;  if (assertEnable==false)  {  throw new RuntimeException("Assertions should be enable");  }  }  }

如果我們不使用-ea參數(shù)運(yùn)行上面的程序,則控制臺將輸出:

Exception in thread "main"   java.lang.RuntimeException: Assertions should be enable at AssertExample.main(AssertExample.java:14)

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“JDK1.4特性assert的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!


網(wǎng)站名稱:JDK1.4特性assert的示例分析
文章源于:http://weahome.cn/article/gpgepd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部