If you really want to find out what goes on inside your Java application, then the debugger is your best choice.
Are you aware of all the things modern debuggers can do?
With recent Java language advances such as lambdas, and rapid improvements by the IDE vendors it is a good time to revisit Java debugging.
We will go through some common use cases and solve them using debugging features and strategies in IntelliJ IDEA, Eclipse and Netbeans:
Smart breakpoints and stepping, lambdas, monitoring classes and instances, concurrency, etc.
So come along for some debugger magic!