Free Java IDE, Free Java Editors
Eclipse http://www.eclipse.org/
Eclipse is an open source extensible IDE. At present, it works well as a Java IDE, and includes Java development tools. It requires that you have the Sun Java runtime environment (JRE) installed. The IDE supports Windows, Linux, Solaris, QNX, AIX, HP-UX, Mac OS X, and possibly other systems as well.
NetBeans http://www.netbeans.org/
NetBeans is a cross-platform open source IDE for Java that comes with a syntax highlighting code editor that supports code completion, annotations, macros, auto-indentation, etc. It includes visual design tools (wizards) for code generation. It integrates with numerous compilers, debuggers, Java Virtual Machines and other tools.
DrJava Java IDE http://drjava.sourceforge.net/
DrJava is an integrated development environment for Java, released under the GNU GPL, that allows you to interactively evaulate Java expressions. It is released under the BSD licence.
JIPE Java IDE http://jipe.sourceforge.net/
Jipe is a free Java IDE written in Java. It allows you to write and test Java applications and applets. Among its features are syntax highlighting, a Methods speedbar and project management. Since it's written in Java, it is presumably portable to all operating systems that has a Java Virtual Machine. The author appears to have tested it on both Windows and Linux.
Gel http://www.gexperts.com/gel.html
Gel is an IDE for Java that features syntax highlighting (Java, JSP, HTML, XML, C, C++, Perl, Python, etc), unlimited undo and redo, column selection mode, block indent and unindent, highlighting of matching braces, spell checking, automatic positioning of closing braces, auto indent, regular expression searches, find in files, code completion (Java and JSP), parameter hints, identifier hints, context sensitive help linked to Javadoc, class browser, project management, integrated support for ANT and JUnit, differencing tool to compare files, etc. It works only on Windows (it was not written in Java). This program is no longer being maintained.
BlueJ Java IDE http://www.bluej.org/download/download.html
BlueJ is a Java IDE that has a built-in editor, compiler, virtual machine and debugger for writing Java programs. It also has a graphical class structure display, supports graphical and textual editing, allows interactive object creation, interactive testing and incremental application building.