Java Reflection in Action is unique in presenting a clear account of all
the cool things you can do with reflection, and at the same time pro-
viding the sound conceptual basis that developers need to create
advanced applications. The book includes careful explanations of
sometimes perplexing programming techniques along with enough
background to understand how to extend and vary them. This book
overcomes reflection’s reputation as a mysterious and esoteric philo-
sophical pursuit, or as a set of messy error-prone coding tricks.
As reflection becomes increasingly common and useful in all sorts
of applications, it is great to finally have a book that features disci-
plined yet still creative and fun software engineering practices based
on reflection. Even occasional users will immediately adopt the
book’s patterns and idioms to solve common problems. Many of the
examples can be directly adapted for customized solutions in diverse
areas such as XML processing, automated software testing, and pro-
gram analysis tools. Readers will also find underlying rationales for
code performing introspection, proxies, class loading, and so on,
that are often seen but not often explained well in everyday Java pro-
grams. And even experts will find new ideas and well-thought out
advice for using some of the more subtle aspects of reflection.