What to download
What is a good compiler for java??
I think by compiler you mean IDE (Integrated development environment). Sun provides the compiler (javac) and the IDE's tap into its abilities.
I like eclipse 3.0. But I have not used anything else other than Textpad so I have nothing to compare it to (shrug).
You can get eclipse at www.eclipse.org. I'm sure people will have other recommendations as well.
Netbeans is another good (free) IDE. I've never used Eclipse so I don't know how it would compare to that.
In the end I guess the best IDE will depend partly on your personal tastes and partly on what job you want to accomplish. Textpad is more than adequate for learning Java on, and the only reason I ever used anything else was when I needed to design a GUI. For that it's much more convenient to use a GUI editor, and Netbeans has a rather nice one.
If you're new to programming, then I think BlueJ is good because its very simple and visually displays the relationships among classes. Though it's a little buggy and its menus respond slowly.
-- Android Development Center
-- Cloud Development Project Center
-- HTML5 Development Center
-- Windows Mobile Development Center