Bloch, Joshua and Gafter, Neal. "Java(TM) Puzzlers: Traps, Pitfalls, and Corner Cases." (2005): .