Java Programming Exercises : Volume One: Language Fundamentals and Core Concepts