Given:
public class Counter {
public static void main(String[] args) {
int a = 10;
int b = -1;
assert (b >= 1) : "Invalid Denominator";
int c = a / b;
System.out.println(c);
}
}
What is the result of running the code with the -ea option?
A.
-10
B.
0
C. An AssertionError is thrown.
D. A compilation error occurs.
題解
Java的assertion敘述通常用於private方法內,確保傳入方法的參數範圍。當assertion敘述的判斷式為false的時候,就會拋出AssertionError。在執行Java程式的時候,若要啟用assertion敘述的功能,必須要在「java」指令後加上「-ea」或是「-enableassertions」參數來啟用assertion。
在這題的程式中,assertion敘述的判斷式為false,所以會拋出AssertionError。