This book begins with examples and ends with exercises. It emphasizes learning by doing. You will spend very little time on reading the concepts. However, you have to spend much time on thinking over the problems and typing out the code to see how Java helps solving the problems. The first exercises take a few minutes to complete. By the end of the book, each exercise may take more than a few hours to solve.