JavaScript, c'est pour le Web.
Mais Java, c'est un langage portable sur ttes les plate-formes, et destiné à des applis intégrées à l'OS. Il nécessite une machine virtuelle (un environnement quoi) préalablement installée sur la bécane. Java nécessite donc pas mal de ressources (128 Mo et un truc à 400 MHz) pour tourner confortablement.
C'est donc beaucoup plus lourd que le C++.
Ce n'est pas un problème, vu que l'objectif du langage n'est pas le même.