Já tedy programuju v C++ a nemám pocit, že bych něco dělal dlouho jen proto, že si někdo myslí, že v C++ se to musí programovat dlouho a je to složité.
<pošťuchování>Sekretářka co sčítá čísla z buňek v Excelu na kalkulačce, protože jí nikdo neupozornil, že to Excel umí sám, taky nemá pocit, že něco dělá zbytečně dlouho

Stejně tak C++ programátor co právě strávil dva dny hledáním ošklivé paměťové chyby v programu taky bude tvrdit, že je nesmysl, že v C++ se programuje pomalu

</pošťuchování>
No a teď vážně:
V tom tvém výčtu dost postrádám vlastnost Javy, kterou osobně pokládám za killer feature: Anotace. Pokud vím, nic podobného C++ (a asi žádný jiný jazyk?) nemá a přitom je to naprosto geniální věc.
Pak jsou tu aspecty. Skvělá věc, i když, ve špatných rukou, řekl bych, až smrtelně nebezpečná

A reflexe. Člověk ji použije jednou / dvakrát za rok max (pokud víckrát, je prase), ale když, tak vytrhne trn z paty. Ta se v C++ dá do určité míry nahradit přes templaty, ale jen do určité míry. A naopak, co v Javě neumí generika se dá částečně obejít reflexí.
Naopak, s generiky žádný velký problém nemám (a za hack považuju spíš C++ generika, ale to je spíš filozofická otázka). Respektive jediný vážnější/nepříjemný problém, na který jsem za svoji praxi narazil je, že nejde napsat T.class.
Podobně vícenásobná dědičnost. Naprosto mi dostačuje možnost implementovat víc interfaces - ani se nepamatuji, kdy naposled mi to nestačilo. A přinejhorším se to dá obejít přes skládání.
Co mě naopak na Javě štve a uvedené není je neexistence výstupních proměnných.