Reasons why C++/C is used nearly everywhere:
> Games programmers have almost exclusively worked in C++/C forever. They know it, they are good at it, why change.
> All of a companies tools will be written to work for C++/C. These include level designers, game engines, physics libraries, sound engines etc etc. It would take years to rewrite them in Java/C#.
In the future I expect more and more stuff will move to Java/C#, with calls being made back to C libraries only for low level device access and graphics libraries (directX, C#). Its a perfectly reasonable idea to build a game engine in C# which calls the openGL libraries to render things. The overhead of Java/C# as opposed to C++/C is very low now - probably only a few percent as of Java 6.0. I believe .Net is lagging behind a little bit in terms of performance, but I guess not for long.