BlueJ is a free and open-source integrated development environment for Java, developed mainly for educational purposes, but also suitable for small-scale software development.
SpecsUpdate
Ranked in these QuestionsQuestion Ranking
Pros
Pro Many features
All the features you would expect: syntax highlighting, code-completion, templates, extension-manager, git integration, unit-testing, etc..
Pro UML start view
Shows UML chart of your project, making it easy to find classes. Helps beginners get familiar with the structure of Java programs.
Pro Great IDE for beginners
BlueJ was created for educational purposes and is designed to be simple for those who are just learning.
Pro Easy to learn
Because BlueJ was created for teaching purposes, it is designed to be easy to use. It has a user-friendly and intuitive interface.
Cons
Con Not good for big projects
BlueJ is much better suited for small projects. It is designed to be simple and quite basic, rather than to handle large applications.
Con Lack of features
There are very few features available in BlueJ that would would expect from an IDE. For example, syntax highlighting is minimal and there is no code completion.
Con Good just for beginners
Not comfortable for expert programmers.