Процитирую сам себя:
У enterprise-приложений есть три основных качества:
- Большая и сложная кодовая база;
- Высокие требования по надёжности и производительности;
- Длительный срок эксплуатации.
Поэтому разрабатываться они должны на языках со строгой статической типизацией. Приложение на динамическом PHP в несколько миллионов строк кода, у которого на протяжении десяти лет сменится сотня разработчиков, будет иметь в себе такое количество трудноуловимых багов, что его поддержка будет обходиться дороже, чем будет приносить его эксплуатация.
И добавлю, что Java изначально создавалась как язык максимально сопротивляющийся сознательному или бессознательному стремлению программиста выстрелить себе в ногу. Кроме того, она очень хорошо соответствует принципу наименьшего удивления.