Java blir i motsetning til tidligere programmeringsspråk, som for eksempel C++, levert med et stort bibliotek av klasser og metoder, blant annet for bygging av grafiske grensesnitt og for kommunikasjon over Internett. Man kan grovt sett dele opp Java i tre; en standardutgave (Java SE), en forretningsutgave (Java EE) og en mikroutgave (Java ME).