個人的意見だけどC++は言語仕様の表面に出てこない部分が深いからC++を一通り
舐めてからJavaの方が挫折は少ない気もする。

>C++とJavaってどのくらいの割合で重複してると思います?
>自分が習った分だと70〜80%くらいかと思ってるんですけど。

これは表面上の文法が似てるだけで「使いこなす」という話になると全然似てない。
C++は言語の表面に現れてこないアセンブラレベルの部分まで把握して初めて
真価が出てくるし、標準ライブラリが貧弱なのでちゃんとしたものを作る為には
その他のAPIやアルゴリズムなど知識が必要になり、それを原始的なレベルから自分
で構築する手順を踏む事が多いと思う。

Javaの場合は巨大なクラスライブラリの扱いを覚える所が難しさの本質で、
そこまでの最初の取っ掛かりはC++より難しいけどある時点を越えると遥かに
楽になると思う。機能も豊富なのでJavaの仕様で想定されている範囲で何かを
行う分には十分楽しめると思う。

仕事の分野という話でもJavaとC++は余りかぶらない、自分の経験の話になるけど
Javaは主にエンプラ系と言われる企業のシステム構築に使われるケースが殆どで
アプリなどクライアント系と呼ばれる所には殆ど使われない、C++は逆にユーザー
が直に触るアプリで比較的機能が高度なもの(市販パッケージレベルの内部遷移を
持つもの)やシステム寄りのプログラムを記述する部分の仕事が殆ど、ただこれも
定型業務など単純なものだとVBやWebに移行しているのでC++を使うケースは無い。
逆に組み込みなどになると未だにC(not C++)なケースが多いのでその隙間にある
分野になる。ただ使いこなせれば最も強力な言語の一つではあると思うけど。

言語の背景にある考えも全く逆でC++は最大限の自由度と最低限の機能を提供して
後はプログラマが好きにしろという考えで、Javaは言語が完全な機能を提供し
プログラマが過ちを犯し易い部分は言語レベルで制限してでもできるだけバグを
出させないよう制約するという考え方。

長文スマソ