Dass C++ nicht die eierlegende Wollmilchsau ist dürfte klar sein, die gibt es nämlich nirgends. Man muss immer auf das Anwendungsgebiet achten. Ich sag es mal so, man kann vieles mit vielen Programmiersprachen machen, aber man sollte ich Fragen ist das effektiv Anwendung x mit Programmiersprache y zu programmieren? Schreib mal ein einfaches Programm mit GUI unter C++ und Java. Allein wegen der Systemunabhänigkeit würde ich Java vorziehen, auch ist es wesentlich leichter solche Sachen mit Java zu programmieren. Willst du hingegen einen Treiber programmieren, wird das mit Java nicht viel. Man muss sich halt immer nach der elegantesten Lösung umsehen, deren Umsetzung am wenigsten Zeit benötigt. Denn Zeit ist bekanntlich Geld. An sich nehmen und geben sich die ganzen C-basiernden Sprachen nicht viel. Kann man eine ist es nicht so schwer sich in eine andere einzuarbeiten. Beim Programmieren ist es eigentlich nicht das Befehle lernen, sondern wie man etwas umsetzt.
Kleines Beispiel:
Man entwickelt einen Algorithmus für irgendwas. Sobald man den in Pseudocodenotation geschrieben hat, dürfte es kein Problem sein diesen in verschiedenen Programmiersprachen (auch wenn teilweise unbekannt) umzusetzen. Wenn man weiß wie man "generell programmiert" dann sucht man sich einfach die passenden Befehle heraus. Hier bin ich nicht der gleichen Meinung die FrankR. Ich finde IDEs sehr nützlich aus 2.Hauptgründen.
1.Übersicht:
Man hat eine wesentlich bessere Übersicht über Pakete und Klassen
2. Echtzeitkorrektur
Viele Fehler werden dir schon beim Programmieren angezeigt und nicht später erst bei ausführen.(z.B. vergessene Semikolons, offene Klammern etc.) das spart Zeit und Mühe
3. Anzeige von Funktionen
Gibt man einen Klassennamen und dann einen . ein erscheinen alle zur Verfügung stehenden Methoden dieser Klasse mit Erklärung und Rückgabewert. Man sucht eine Funktion mit der man sein Problem am besten lösen kann, kann man dort mal durchsehen und meist findet man etwas Passendes.
Falls es meinem Vorposter rein um sehr ein-Klassen-Programme mit einfachem Inhalt ging, z.B. Ausgabe, kleine Berechnungen und ich ihm Unrecht getan hab, so möge er das jetzt sagen oder für immer schweigen

Weiter zum Thema. Wenn man sich die Grundlagen angeeignet hat, lohnt es sich imo meist eher allg. Bücher zu wählen. Z.B. gab ich grad ein Buch über OOP durch, das zwar mit Java arbeitet, allerdings so allg. ist, dass es auch für andere Sprachen interessant wäre. Atm lese ich Algorithmen und Datenstrukturen, welches sich zwar auch auf Java bezieht, aber größtenteils auch allg. gehalten ist, was der Autor am Anfang auch betont. (Java bietet sich bei halt wegen der Schule und später der Uni an)
Wenn du Java lernen willst, kann ich nur das Buch "Java ist auch eine Insel empfehlen". Für den Einstieg imo keine schlechte Wahl. Gab es sogar mal als E-Book kostenlos zum Download.
Ps: Hast Pn.