"Every programming language has its quirks. This lively book reveals oddities of the Java programming language through entertaining and thought-provoking programming puzzles."
--Guy Steele, Sun Fellow and coauthor of The Java™ Language Specification
"I laughed, I cried, I threw up (my hands in admiration)."
--Tim Peierls, president, Prior Artisans LLC, and member of the JSR 166 Expert Group
How well do you really know Java? Are you a code sleuth? Have you ever spent days chasing a bug caused by a trap or pitfall in Java or its libraries? Do you like brainteasers? Then this is the book for you!
In the tradition of Effective Java™, Bloch and Gafter dive deep into the subtleties of the Java programming language and its core libraries. Illustrated with visually stunning optical illusions, Java™ Puzzlers features 95 diabolical puzzles that educate and entertain. Anyone with a working knowledge of Java will understand the puzzles, but even the most seasoned veteran will find them challenging.
Most of the puzzles take the form of a short program whose behavior isn't what it seems. Can you figure out what it does? Puzzles are grouped loosely according to the features they use, and detailed solutions follow each puzzle. The solutions go well beyond a simple explanation of the program's behavior--they show you how to avoid the underlying traps and pitfalls for good. A handy catalog of traps and pitfalls at the back of the book provides a concise taxonomy for future reference.
Solve these puzzles and you'll never again fall prey to the counterintuitive or obscure behaviors that can fool even the most experienced programmers.
Table of contents
- Title Page
- Copyright Page
- 1. Introduction
- 2. Expressive Puzzlers
- 3. Puzzlers with Character
- 4. Loopy Puzzlers
- 5. Exceptional Puzzlers
- 6. Classy Puzzlers
- 7. Library Puzzlers
- 8. Classier Puzzlers
- 9. More Library Puzzlers
- 10. Advanced Puzzlers
- A. Catalog of Traps and Pitfalls
- B. Notes on the Illusions
- Title: Java™ Puzzlers: Traps, Pitfalls, and Corner Cases
- Release date: June 2005
- Publisher(s): Addison-Wesley Professional
- ISBN: 032133678X
You might also like
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to …
97 Things Every Java Programmer Should Know
If you want to push your Java skills to the next level, this book provides expert …
Fundamentals of Software Architecture
Salary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real …
Clean Code: A Handbook of Agile Software Craftsmanship
Even bad code can function. But if code isn't clean, it can bring a development organization …