This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
It's because the exception stack trace and what you print in your program using System.out.println() are sent to two different outputs: the exception is printed to stderr, while your System.out.println output is printed to stdout. You see in the Eclipse console that the exception message is in red, while your output is in black.
Those two output streams are separate, and Eclipse probably has two different threads to handle them, which print the result independently of each other in Eclipse's console window. Because that happens independently, the order in which the messages appear in the window isn't predictable (it depends on thread scheduling).