Java, objektorientert programmeringsspråk for datamaskiner, utviklet av Sun Microsystems tidlig i 1990-årene for å fremstille applikasjoner som kan kjøres uavhengig av teknologisk plattform, primært for bruk på Internett og andre nettverk. I 2010 ble Sun Microsystems kjøpt opp av Oracle, som i dag utvikler språket videre. Java har innebygget støtte for nettverk og for sikker kjøring av kode lastet ned fra andre datamaskiner.

Utviklingen av Java skjer gjennom en forholdsvis åpen fellesskapsprosess kjent som Java Community Process. Java er likevel ikke en «åpen standard», fordi Oracle eier varemerket, forbeholder seg retten til å godta alle endringer og utvidelser, og stiller bruksvilkår for språket. Sun har også avvist forslag fra store Java-aktører som IBM og BEA Systems om å distribuere Java som åpen kildekode.

For å kjøre en Java-applikasjon må en datamaskin (som kan være alt fra en server til en mobiltelefon) ha en Java virtuell maskin (JVM) som kjører selve applikasjonen, og en lokal implementering av standardklasser for tjenester som ellers kunne hentes direkte fra maskinens operativsystem, for eksempel grafikk, filsystem, nettverk med mer. JVM og disse klassene utgjør et Java-kjøremiljø (eng. Java Runtime Environment) for en gitt maskinplattform med operativsystem. Strukturen kan virke komplisert, men fordi et Java-program kompileres til en virtuell maskin, som fungerer likt uavhengig av den fysiske maskinen den kjører på, kan det deretter kjøres på alle mulige maskiner og operativsystemer. Tidlige Java-applikasjoner fikk ry på seg for å være tungrodde, men de senere årene har JVM-ene blitt langt mer effektive, blant annet på grunn av teknologier som “kompilering i siste liten” (just in time compilation).

Javas nettorientering, og evnen til å kjøre ekstern kode uten fare for sikkerheten, gjør programmeringsspråket særdeles velegnet for å kjøre lagdelte applikasjoner i distribuerte miljøer. Mange spill og tjenester til mobiltelefoner kjøres svært effektivt på Java, på samme måte som tunge nettapplikasjoner spredt på databasetjenere, applikasjonstjenere og hundrevis eller tusenvis av klienter. Java-applikasjoner spres gjerne på komponenter kalt applet hvis den er beregnet på en klient, servlet hvis den skal til en server, og portlet hvis den representerer en bestemt tjeneste på en sammensatt portal.

Fra 1999 ble Java gjenstand for en omfattende juridisk strid mellom Microsoft og Sun med gjensidige påstander om mislighold av kontrakter og lisensbetingelser. Sun fikk til slutt medhold i retten, og 2004 inngikk de to et omfattende forlik. Etter forliket har Sun og Microsoft innledet et fruktbart samarbeid for å sikre interoperabilitet mellom Java og .Net, og for å bidra til flere vidtrekkende og åpne standarder. Sun leverer en egen JVM til Windows som sikrer at Java-implementeringen til Windows-PC-er holder tritt med språkets teknologiske utvikling.

Foreslå endringer i tekst

Foreslå bilder til artikkelen

Kommentarer

Har du spørsmål til artikkelen? Skriv her, så får du svar fra fagansvarlig eller redaktør.

Du må være logget inn for å kommentere.