Java była pisana z myślą o środowisku uruchomieni owym, czyli w jej przypadku wirtualnej maszynie Javy. Nie ma najmniejszych szans, żeby była szybsza od jakiegokolwiek języka kompilowanego. Natomiast pozostaje pytanie o ile jest wolniejsza np. od C/C++, czy przy normalny użytkowaniu oprogramowania jest to uciążliwa różnica? Nie mówię tutaj o aplikacjach przetwarzających jakieś skomplikowane algorytmy obliczeniowe, a o różnego rodzaju programach wykorzystujących Swing. Moim zdaniem różnica nie jest dla większości użytkowników posiadających przeciętnie wydajne komputery zauważalna, a niektóre aplikacje napisane w Javie są po prostu ładne, wygodne i można je uruchomić zarówno pod Windowsem jak i Linuxem, co dla niektórych jest zdecydowanym plusem.
Poza tym jest po prostu potężnym językiem, posiadającym standardowo sporo gotowych bibliotek, a pracuje się z nim bardzo przyjemnie. Ja osobiście korzystam z NetBeans pod Linuxem i na prawdę nie narzekam na jego wydajność, a jest to moje ulubione IDE do programowania.
Dzięki Javie można pisać potężne oprogramowanie integrujące zarówno aplikacje przetwarzane po stronie serwera jaki i te uruchamiane po stronie klienta itd. Dużo można by się tutaj rozwodzić.
Moim zdaniem porównywanie Javy z C, a przede wszystkim z C++ nie ma sensu. Wiadomo nikt nie będzie pisał oprogramowania np. na potrzeby automatyki w Javie, ale może spokojnie, szybko napisać jakaś aplikację z rozbudowanym GUI.