The time is right. Your work is done. The last letter of your Java code has been written. You let the IDE compile the code and a new running version of your app is ready to be released. You’ve done this a thousands times, there’s nothing new on the horizon. The question what lies beneath, what happens under the hood, has never occurred to you. Until now!