ahah . ..
tout ce que tu peut faire en java peut-être fait en C.
pour le jeux sur portable même si certain sont écrit en java, d´autre ( la plupart peut-être) sont écrit en assembleur ou pourquoi pas en C.
ensuite, réduire le C++ à l´encêtre du java, c´et un peu con car le c++ est infiniment plus puissant et performant que le java sur tout les plan ( capacité du langage, des outil, etc.) son seule défaut est de devoir être recompilé pour chaque plateforme , mais c´est aussi une qualité qui lui confère puisance et rapidité.
et enfon la communauté de développeur c++ est certainement au moins aussi étendu que celle de dev java, et va faire un tour dans une librairie spécialisé et tu trouvera 10 fpois plus de bouquin sur le c++ que sur le java ( même si celui ci est plsu récent ce qui est probablement l´argument le plus bidon que j´ai jamais entendue).
Pour conclure, même pour faire un jeu en 2D on peut utiliser un langage puissant et dans ce cas là, du C++ avec la SDL est un bon point de départ.