Aucun langage n'a exactement les mêmes buts. Mais tout ceux de Java sont couverts d'une meilleure manière par d'autres à l'exception de celui de faire rentrer de l'argent à Sun/Oracle. Par exemple C#, je ne suis pas un grand fan, mais au moins ils s'amusent pas à lancer un keyword “generic” pourri et les développeurs ne montrent pas leur incompétence constamment (non mais sérieusement vous avez lu l'histoire des flux final en Java ?). Ce n'est pas facile de design un bon langage et c'est compréhensible que la plus part échoues, mais alors pourquoi supporter leur développement ?
Quant à l'utilisation dans les « grosses entreprises », ça me fait penser à une citation de Paul Graham pas seulement
sur Java mais sur l'OOP en général :
Object-oriented programming is popular in big companies, because it suits the way they write software. At big
companies, software tends to be written by large (and frequently changing) teams of mediocre programmers.
Object-oriented programming imposes a discipline on these programmers that prevents any one of them from doing too much
damage. The price is that the resulting code is bloated with protocols and full of duplication. This is not too high a
price for big companies, because their software is probably going to be bloated and full of duplication anyway.