Java References

Java 1.5.0 Documentation The page contains extensive documentation about Java, including a link to the API documentation. Generally, your web browser will load the documentation faster if you view the documentation without frames.

Java Editors

Windows
I do not do much editing on Windows, so I'll defer to Keith Trnka.
EditPlus
EditPlus is Keith Trnka's editor of choice on Windows. Keith says, "It's addictive not only for syntax highlighting and basic autocompletion, but you can assign commands to certain keyboard shortcuts and a special menu. This means you can create a keyboard shortcut to compile the current file and one to run the current file. (If you have the Java SDK installed on your computer.) However, unlike nedit, it is shareware. In the case of EditPlus, that means you should purchase a license if you use the program for more than 30 days although the program will still run fine after 30 days."
UltraEdit
UltraEdit is another popular programmer's text editor.
nedit
Just as you can use nedit in UNIX, it can be used on Windows. However, you will need to install cygwin or some other X Window server. nedit supports a client/server mode to facilitate remote file editing.
Standard UNIX Editors
You can run emacs, vi, pico, etc. over a terminal session (preferrably ssh). You can run graphical applications remotely as well by using Exceed or VNC. If you prefer to edit files on a Windows computer but like UNIX editors, take a look at cygwin. It's a UNIX operating environment for Windows. So you get the UNIX text editors and all sorts of other UNIX commands.
UNIX
Standard UNIX Editors
Of course you can use emacs, xemacs, vi, pico, etc. I do not recommend pico for editing programs because it does not do syntax highlighting or smart tabbing.
nedit
Some people like to use nedit in UNIX environments primarily for syntax highlighting and to use the mouse. It is available on strauss and can easily be installed on an EE/CIS account. Some people say that it "feels like Windows."

Integrated Development Environments (IDEs)

IDEs tend to use a lot of CPU time and a lot of memory so they aren't appropriate for use on most Suns because multiple users share those servers resources.
Borland JBuilder
The JBuilder Foundation is the free version for personal use. I've heard it's very easy to use.
Eclipse
Eclipse is a powerful IDE based on plug-ins and is becoming an industry standard. It has plug-ins for Java, C++, ApsectJ, web programming, etc.
NetBeans
A student introduced me to NetBeans. I found it to be a little easier to use than Eclipse.
Sun ONE
The Sun website is a little confusing, as they keep changing everything. You should be able to find Sun's IDE from the above link. It's also supplied with the optional Core Java books too.
BlueJ
I played around with this one a bit and I think it's very nice, especially for coursework. It's not really that complicated either. This IDE is probably small and simple enough to run on a Sun. It's only a couple of megabytes and is written in Java.
Other IDEs for Java
A Google search will return many more IDEs than what are listed here.
This page heavily borrowed from Keith Trnka