Java: The Fundamentals of Objects and Classes