Way back when, I used to have some insane debates over this.

Java - Designed to be relatively accessible, it relies on virtual machine and uses syntax similar to C++. Not compatible with any other form of code. Limits on matrices and variables.

C++ - Much more complicated, basically built on C and thus compatible. No limits on variables.

Personally, I'd go with Java just because I've been using it for longer probably even though C++ does seem like a better language.

I'm curious to see the responses.