Android vs Java
Java on üks populaarsemaid objektorienteeritud programmeerimiskeeli maailmas. Java-d kasutatakse laialdaselt tarkvara ja veebiarenduseks. Java on viimasel ajal muutunud populaarseks keeleks ka mobiilipõhiste rakenduste jaoks. Android on Google'i välja töötatud mobiiltelefonipõhine platvorm. Androidi arendus on enamasti Java-põhine. Suur osa Java raamatukogudest on saadaval Androidi platvormil, kuid Androidis on olemas ka palju muid (mitte-java) teeke (kasutajaliideste jms jaoks).
Java
Java on tänapäeval üks enim kasutatavaid objektorienteeritud (ja klassipõhiseid) programmeerimiskeeli, mida kasutatakse tarkvaraarendusest veebiarenduseni. See on üldotstarbeline ja samaaegne programmeerimiskeel. Algselt töötas selle välja Sun Microsystems 1995. aastal. James Gosling on Java programmeerimiskeele isa. Oracle Corporation omab nüüd Java (pärast hiljutist Sun Microsystemsi ostmist). Java Standard Edition 6 on selle praegune stabiilne väljalase. Java on tugevasti trükitud keel, mis toetab mitmesuguseid platvorme Windowsist UNIXini. Java on litsentsitud GNU üldise avaliku litsentsi alusel. Java süntaks on väga sarnane C ja C++ süntaksiga. Java lähtefailidel on.java laiend. Pärast Java lähtefailide kompileerimist javac-kompilaatori abil loob see.class failid (mis sisaldavad Java baitkoodi). Neid baitkoodifaile saab tõlgendada JVM-i (Java virtuaalmasina) abil. Kuna JVM-i saab käivitada mis tahes platvormil, on Java väidetav alt mitmeplatvormiline (platvormideülene) ja väga kaasaskantav. Tavaliselt kasutavad lõppkasutajad Java baitkoodi (või veebibrauserites Java-aplettide) käitamiseks JRE-d (Java käituskeskkonda). Tarkvaraarendajad kasutavad rakenduste arendamiseks Java arenduskomplekti (JDK). See on JRE superkomplekt, mis sisaldab kompilaatorit ja silurit. Java kena omadus on automaatne prügikoristus, kus enam mittevajalikud objektid eemaldatakse automaatselt mälust.
Android
Android on Google'i välja töötatud mobiiltelefoniplatvorm. Android toetab suurt osa Java 5.0 teekidest. Seega võib öelda, et Androidi arendus on Java-põhine. Paljudel Java teekidel, mida ei toetata, on paremad asendused (muud sarnased teegid) või neid pole lihts alt vaja (nt printimiseks kasutatavad teegid jne). Teeke, nagu java.awt ja java.swing, ei toetata, kuna Androidil on kasutajaliideste jaoks muud teegid. Android SDK toetab muid kolmandate osapoolte teeke, nagu org.blues (Bluetoothi tugi). Lõppkokkuvõttes kompileeritakse Androidi kood Dalviki opkoodideks. Davilk on spetsiaalne virtuaalne masin, mis on optimeeritud mobiilseadmete jaoks, millel on piiratud ressursid, nagu võimsus, protsessor ja mälu.
Mis vahe on Androidil ja Javal?
Java on programmeerimiskeel, Android aga mobiiltelefoniplatvorm. Androidi arendus on Java-põhine (enamasti), kuna Android toetab suurt osa Java-teekidest. Siiski on olulisi erinevusi. Erinev alt Java-st pole Androidi rakendustel põhifunktsiooni. Neil on onCrete, onResume, onPause ja onDestroy funktsioonid, mille arendajad peaksid üle kirjutama. Java kood kompileerub Java baitkoodiks, Androidi kood aga Davilki opkoodiks.