BlueJ is an integrated Java environment specifically designed for introductory teaching in object oriented development with Java. I think it has lots of potential.

"The aim of BlueJ is to provide an easy-to-use teaching environment for the Java language that facilitates the teaching of Java to first year students. Special emphasis has been placed on visualisation and interaction techniques to create a highly interactive environment that encourages experimentation and exploration."
It is widely used.

BlueJ supports:

  • fully integrated environment
  • graphical class structure display
  • graphical and textual editing
  • built-in editor, compiler, virtual machine, debugger, etc.
  • easy-to-use interface, ideal for beginners
  • interactive object creation
  • interactive object calls
  • interactive testing
  • incremental application development

Did I mention it is free?

Hat Tip: James Gosling
Website: Blue J