public static void main(String [] args){
int a = 5;
if(a==5){
System.out.println("中斷啦");
return;
}
System.out.println("程式沒有中斷");
}
//-----------------------------------------------------
//-- 語法 : assert <布林值> : <輸出>;
//-- 語法 : assert <布林值>;
public static void main(String [] args){
int a = 5;
assert a==5 : "中斷啦";
System.out.println("程式沒有中斷");
}
//---------------------------------------------------
此2方法意思是一樣的,不過下面執行時要加上 -ea 指令
沒有加上 -ea 指令 ,程式將會被跳過忽略
assert 主要用於內部程式設計師除錯使用,所以要加上 -ea
程式碼發布後,客戶端不會自己加上 -ea 所以程式不會被執行
java -ea MyClass
java -enableassertions MyClass
[ 注意事項 ]
1.另外千萬不要在 assert 外面加上 try-catch 等等的例外捕捉,因為 assert 本來就是要讓程式中斷,加上例外捕捉後,程式將無法中斷
2.不要在 assert 裡加入運算式
3.不要用 assert 檢查 公開方法 的參數,因為 assert 預設是不執行,應該用 if 來檢查
4.不要用 assert 呼叫方法,因為 assert 預設是不執行,方法裡的程式碼可能不會執行
留言列表