Java é versátil, sua JVM permite qualquer linguagem, então nesse sentido (JVM), acredito que poderíamos até fundir Java e Kotlin, extendendo seu alcance.

Linguagem Dificuldade Aplicações
Bytecodes, JVM Média Empresarial, Web, Mobile, Desktop, Aplicações Android, Desenvolvimento Backend

O mesmo poderia ser feito com .NET.