Java is also much easier to quickly and cleanly create something that works without failing than say C++. It is crap for 3D graphics (right now anyway, as that could change in the future), but the differences in CPU related tasks aren't that evident actually. New JVM versions have gotten incredibly good at optimizing your code. Also, they do so at runtime which means they know everything about your PC, which helps compiling to the most efficient native code. C++ applications are usually compiled to run nicely on a broad range of processors which means you don't get the last few % out of very processor-specific hacks. Right now though, you are 100% right. Especially for things like minecraft with a huge visible world, C++ would really be much better.