Вопрос не простой.
Если Вы уверены, что Вам нужно изучить оба языка, в условиях недостатка времени, я бы на Вашем месте ограничился в С++ только самыми базовыми вещами: классы и объекты, инкапсуляция, наследование и полиморизм. Затем Java. А затем можно снова вернуться к C++ для более глубокого изучения.
Только один пример.
С одной стороны, есть такая тема в C++, которая Вам точно не нужна для изучения Java: "перегруженные операции". С другой стороны, было бы хорошо в C++, попользовать STL. А понять как он работает без знания перегруженных операций очень сложно. То есть, научится им пользоваться - можно. А понять как это работает, и, что еще более важно, понять текст сообщений об ошибках без хорошего понимания перегруженных операций (ну и еще и шаблонов) очень сложно. Таким образом, STL, boost и еще много что просто вылетает.
Если же по предложенной мной схеме, то Вы после получения базовых знаний об ООП изучите Java и в том числе, научитесь пользоваться сложными типами данных, такими как словари, хеш-таблицы и т.д. А затем можно вернуться к C++ и будет чуть проще научиться пользоваться STL. И разумеется, Вам придется научиться перегружать операции.