Software for Java Programming
In order to run other peoples' Java programs, you must have the JRE (Java Runtime Environment). In order to write and run your own Java programs, you must have the JDK (Java Development Kit), which is sometimes called the SDK (System Development Kit)--these are the same thing. The JDK includes the JRE, so don't get both.
As of this writing (June 2005), the latest and greatest version of Java is Java 2 Platform, Standard Edition 5.0, also known as "Java 2 version 5" or "Java 5" or "J2SE 5.0" (yes, the numbering is confusing), available from http://java.sun.com/j2se/1.5.0/download.jsp. If you have Windows or Linux, you must download and install the JDK; if you have Mac OS X, you already have the JDK, but you should check if it is the latest version.
You also need a text editor with which to write programs. Any text editor that saves plain text will do, such as Microsoft's Notepad. Recommended editors are TextPad on Windows and BBEdit on the Macintosh. However, most IDEs (see below) include a text editor.
An IDE (Integrated Development Environment) is a single program that lets you edit, compile, run, test, and debug programs, all in one place. If you do not have an IDE, you need to learn how to compile and run Java programs from the command line; this isn't difficult, just less convenient.
Except as noted, all these IDEs are free and will run on any computer system.
BlueJ is probably the simplest IDE; its main advantages are that it shows a diagram of how your classes relate to one another, and it has simple menus.
DrJava is also simple; its main advantages are that it allows you to test out individual Java statements, and the editor is more powerful.
JCreator is another simple IDE; its main disadvantage is that it only runs on Windows. The LE version is free.
Professional IDEs have many more features, and are correspondingly harder to learn. Once you become reasonably comfortable with Java, you really should take the time to master a powerful IDE. You will be surprised at how much work it will save you.
Eclipse is an extremely good and very popular IDE. It is the one I use. It comes with good tutorials. Get the latest "Stream Stable Build."
IntelliJ Idea is said (by people who have used both) to be even better than Eclipse. Its main disadvantage is that it is expensive (about $500), although the educational discount price is (barely) affordable.
NetBeans is Sun's own IDE, and is said to be catching up with Eclipse. Its main advantage is that it can be downloaded along with the JDK (see above), hence is very well known. It also provides a visual GUI builder, but that relies on some packages that must be included with your program if it is to run outside the NetBeans environment.
JBuilder, by Borland, is probably the best commercial IDE; the "Foundation" version is free.