How The Java Program Runs In Memory