Ik zal mijn amatueristische mening hier maar wagen op professioneel *kuch* gebied:
K ben nu bezig met Qt te leren na een semester Java te hebben gehad en daarna een semester C++ basis. Let wel: ik ben student Fysica, geen informaticus, dus heb ik andere eisen

. Qt abstraheert pointers en memory management van c++ zo, dat je je weinig moet aantrekken van die dingen (maar toch nog iets). Er is enorm veel documentatie, werkt cross-platform, er zijn verschillende boeken over... Ik ben er fan van
Java lijkt mij verdeeld te zijn: Awt, Swing... al die dingen die wel en niet samenwerken, wel/niet verouderd zijn... De uiteindelijke interface die je te zien krijgt valt tegen (toch op Windows, waar nog steeds 95% van de mensen mee werkt). en je hangt natuurlijk vast aan wat Sun wil en niet wil. Qt kan je krijgen en gebruiken als FOSS, java enkel als je OpenJDK enzo wilt uitproberen en testen.
Ik zou er goed over nadenken, en in gedachten houden dat er verschrikkelijk veel libraries zijn in c/c++, van video en audio tot GUI en puur mathematische dingen. Als je dan wat extra wil, gebruik dan Boost (persoonlijk geen ervaringen mee).
Om af te sluiten: (skip naar de allerlaatste conclusie, of lees het helemaal als je zin hebt

)
http://faramir.ugent.be/thesis/Botte.pdf