You can learn Java first, but it may be more difficult to understand at first, simply because java uses classes and object-oriented programming, whereas you can learn general C++ without having to understand classes and object-oriented programming right off the bat.
This is sort of true. I don't think that "faking" procedural programming in Java is all that hard though.
Of course, learning procedural programming in C++ often means dealing with the various forms of C/C++ spainglish. Now this can be a royal PITA for a newbie. Instead of learning C++ as a first language, I think it is better to just learn C instead. It's a smaller language with fewer headaches.
Java being an offshoot of C++ seems somewhat misleading to me. I think a better description of Java would be a minimal and simplified a Smalltalk programming environment using C syntax. Aside from some syntatic (sp?) similarity and popularity, C++ and Java don't have much else in common (compiled vs JVM, relatively small std library vs a large library, a relatively large language vs a fairly small language).