Machine-translated by Google. Questions are authored in English.
Top

Discussion

The program is run with java -ea Program08 - what will be the output?

public class Program08
{
    public static void main(String[] args)
    {
        System.out.println("before");
        assert false;
        System.out.println("after");
    }
}

  • A.The program prints before and after
  • B.An AssertionError only
  • C.Compilation fails.
  • D.before, then an AssertionError

Answer: D

Statements before the assertion have already executed and their output has already been written, so before appears. The assertion then fails and the error propagates out of main, so after is never reached. Output already produced is not undone by a later error.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.