A Java IDE is an integrated development environment for programming in Java; many also provide functionality for other languages,
IDEs typically provide a code editor, a compiler or interpreter and a debugger that the developer accesses through a unified graphical user interface (GUI). Java IDEs also include language-specific elements such as Ant and Maven build tools and TestNG and JUnit testing.
Here are a few popular Java IDEs:
Eclipse: a Java-based open source platform that enables the creation of highly customized IDEs from plug-in components built by Eclipse members. The platform is user-friendly for beginners and also suitable for the creation of more sophisticated applications. Eclipse includes a lot of plug-ins that allow developers to develop and test code written in other languages.
IntellJ IDEA: a commercial Java IDE with a free and open source community version. The lightweight IDE offers JUnit and TestNG, code inspections, code completion, support for multiple refactoring, Maven and Ant build tools, a visual GUI builder and a code editor for XML as well as Java.
See a brief video comparing Java IDES: