Amazon.com
Just as software development is an iterative process in which an application is never truly "done," the education of a developer should continue for years. You can use
Hardcore Java as a guide to the transition from novice Java programmer to journeyman, or as a map to parts of the language you haven't explored (or explored adequately) in your development work to date. Because of those design goals, this book is something of a catch-all, covering about a dozen general topics ranging from exception-handling to nested classes (and interfaces!) and the reflection API. The coverage clearly derives from the author's "lessons learned" notes, and they're rich with information. If nothing in this book surprises you, you're probably very experienced with Java.
In addition to this book's tutorial function, Hardcore Java puts forth and defends a number of opinions about the design and style of Java software. One example: After explaining how bit fields work--bit fields aren't widely used in Java programming, and their advantages may be interesting to some programmers--Robert Simmons points out that they're inherently limited in their ability to contain data, and that this can cause problems. This is the kind of design tradeoff that more advanced Java programmers have to consider, and Simmons does the Java community a service by showing programmers how to think critically about the capabilities of their language. --David Wall
Topics covered: Advanced Java topics, including final constants, collections, exception handling, and nested classes. There's a useful bit about getting customers to help you design the data models they need, and very extensive coverage of reflection.
Product Description
Java has quickly become one of the most important languages in programming, particularly for professional and enterprise-level projects. From its infancy as a language primarily used for web applets to its maturity through servlets, Enterprise JavaBeans, and database access, Java has become a complex and robust tool for today's developer. Hardcore Java takes this language and breaks it apart, piece by piece, revealing the important secrets and tricks that will take you from a junior-level programmer to a seasoned and expert developer. You'll fly through the fundamentals and quickly find yourself learning about advanced memory management techniques, optimization and bytecode-level enhancements, and the techniques required to build lightning-fast GUIs. Throughout the book, you'll also master the art of writing and maintaining bulletproof and error-proof code, all while grasping the intricacies of the Java language. Hardcore Java covers:
- Use of the final keyword to optimize and protect your Java classes.
- Complete and thorough coverage of all types of nested classes, including how to optimize anonymous and inner classes.
- Detailed discussion of immutable objects, including unique tips on when to use them (and when not to).
- Elimination of bugs through exception-handling management.
- In-depth studies of constants, including their impact on the Java memory model.
- The most thorough discussion of reflection in print, moving far beyond other books' "Hello World" coverage.
- Construction and use of dynamic proxies, in both Java Standard and Enterprise editions.
- Expansive coverage of weak references, including usage patterns and their role in garbage collection and memory management.
Hardcore Java is an invaluable addition to every programmer's library, and even the most advanced developers will find themselves moving beyond their own conceptions into truly advanced applications of the language. Thousands of lines of code, heavily commented and easily runnable, illustrate each concept in the book.
See all Editorial Reviews