If you know your intended audience, C++ is probably the better route.
If you do not know your intended audience, or your audience is everyone, Java is the better route.
Java deals with its own memory allocations and deallocations. That's one thing that is very difficult for beginning C++ programmers (like me) to understand, especially since I learned how to program with PHP and Java.
The biggest benefit of using Java is the javadocs: one standardized location for all of the standard classes and their methods in one, well written, well organized manual. C++ lacks this, and it's yet another thing that makes C++ hard if you learned Java first.
I'd suggest this: do C, then C++, then Java.
If you're looking to learn how to program from the beginning, I'd recommend Python, actually.