Well, you should certainly use different languages for different tasks and as different games require different tasks, yes, you should use different languages.
Java could be a thought if speed isn't the absolute top priority, but rather something like platform independency.
If you want a lot of 3D graphics you would use a different language than for a simple Point-And-Click-Adventure (oh, I love them!).
Quite a few games are written in C++, but I really don't know, what was used for COD4.
You can find more about languages for game development on
Wikipedia.
Greetings,
Nepomuk