Given:



and the command:

java -ea RateOfInterest

What is the result?

A.

Rate of interest: 0

B. An AssertionError is thrown.
C.

No interest for this account

D. A compilation error occurs at line n1.

題解

Java的assertion敘述通常用於private方法內,確保傳入方法的參數範圍。當assertion敘述的判斷式為false的時候,就會拋出AssertionError。在執行Java程式的時候,若要啟用assertion敘述的功能,必須要在「java」指令後加上「-ea」或是「-enableassertions」參數來啟用assertion。

在這題的程式中,accountType所參考到的字串均不符合swicth結構中的case項目,因此會執行第22行default的程式。所以第23行的assertion敘述執行的時候,就會拋出AssertionError。