Для программирования нужен только актуальный JDK с офф. сайта. Набирать код можно даже в блокноте.
По поводу IDE:
- IntellijIdea - набирающий обороты проект, недавно перешел на него - не жалею. Настраивается практически всё, быстрый старт и подгрузка изменений. Несколько неочевидное меню проекта, замена JDK - нивелируется удобным интерфейсом и "для клиента" - IDE делают разработчики и для разработчиков, никаких рюшечек и прибамбасиков. Нажимаете "Run" - получаете Run, а не красивый бегающий ползунок из Eclipse.
- NetBeans - удобная IDE, тоже в спартанском стиле - но много "лишнего"(причём сначала загружается, а потом выгружается, ибо "нинадо").
- Eclipse - много "закруглённых" углов, "переходов", красивых лоад-баров... Непонятно, для кого это вообще? Вероятно, для блондинок, знакомящихся с языком... Красиво, но бешено тормознуто(особенно, если у вас проект на 10к строк и 10Мб библиотек).