This is set of Koans intended to improve fundamental understanding of the Java programming language.
Essentially a Koan is a problem to solve.
Or from the Wikipedia article I think the most relevant explanation is:
Insight has to be demonstrated. A mere "answer" to a koan is not sufficient. The teacher is not looking for a specific answer, but for evidence that the disciple has grasped the state of mind expressed by the koan itself.
I think this is particularly relevant to the field of programming.
For this I am borrowing from the idea of the original Ruby Koans which involves the practitioner fixing a number of broken unit tests. Using a unit test framework allows for rapid feedback of the topics being discussed and using an IDE we can easily insert breakpoints to explore the code at run-time.
Favourite IDE with the ability to execute unit tests.
Basic understanding of the Java programming language.
If you are unfamiliar with JUnit you should start with the primer rather than the exercises