Which line is an inappropriate use of an assertion?
public class Sample91
{
public static void main(String[] args)
{
boolean open = true;
boolean locked = false;
assert open = locked;
System.out.println(open);
}
}
Answer: C
Both sides are boolean, so the assignment is a valid boolean expression and this compiles. It also overwrites open with false and then asserts that false, so it always fails under -ea and silently corrupts the variable without it. A single = where == was meant is at its most dangerous between two booleans.
Please log in or register to report this question.