Для каких задач Java лучше подходит, чем С++?
Стоит ли смотреть в любую сторону - зависит от того, чем вы хотите заниматься. Перейти можно с любого языка на любой, и С++ тут ничем особым не выделяется. У меня есть даже пример, когда команде переход с С++ на Java дался очень плохо.
Да, в С++ вы должны управлять памятью, это отличный способ выстрелить себе в ногу, и поэтому сейчас советуют отходить от сырых указателей к shared/unique/etc_ptr.
В Java сборщик мусора, да, но это давно не проблема в обычных приложениях. Управлять памятью в С++ - сложно.
 Методы из java-байткода в рантайме компилируются в платформенный код, это ускоряет очень сильно.
Для задач, разрабатываемых на одной платформе, а работающих на других. В частности, писал модули (без графики, естественно) для сервера ФМС РФ на винде (JIdea), а работали они, без малейших нареканий, на IBM'овском сервере по Юниксом. Java была 4-й версии)))
Вообще для кросс-платформенных приложений Java - пока лучший язык, вернее, среда исполнения. Да, С или С++, если не использовать разные ненужные хитрости и прибамбасы, можно без особых усилий компилировать на той или иной платформе. Но чтобы программа шла просто переносом бинарных файлов - это к Java.