Java está LONGE de ser ultrapassado e não apenas de legados, tem MUITA coisa nova sendo feita em Java. Java é enterprise. Eu não coneço o mercado .NET por isso não consigo determinar seu uso. Se você for fazer um projeto pessoal sinta-se livre pra usar o que quiser agora em empresas eles usam e muito Java. E não falo de legado não, falo de coisas novas, inclusive migração de linguagens.