Aqui vai uma boa amostra da entrevista:
InfoQ: Are there major changes between the previous version of ‘Effective Java’ and this one, or is it more of a refinement of existing ideas?
Joshua Bloch: It’s a combination of additions and refinements. The second edition covers all the new language features. It has a chapter on generics, one on enums and annotations, and items on the for-each loop, autoboxing, varargs, and static import. The concurrency chapter has been thoroughly revised in light of java.util.concurrent. And all the existing items have been revised to reflect these new features, and to reflect seven more years of experience with the platform.
That said, I worked very hard not to alter the feel of the book. Hopefully it will feel like an old friend to readers of the first edition – a little wiser and little heavier (21 items and 83 pages, to be precise), but an old friend.
…
InfoQ: In conjunction with Effective Java, there are also many things that one can do to write Ineffective Java. What do you believe are the biggest mistakes one can make which lead to ineffective Java?
Joshua Bloch: I don’t want to sound like a broken record, but here are two biggies:
- Writing your own code when perfectly good libraries exist.
- Premature optimization.
If you can avoid these two, you’ve got half the battle won.

