Luettelo Java-avainsanoista

Java on oliopohjainen ohjelmointikieli, josta löytyy 67 erilaista avainsanaa. Avainsanat ovat varattuja sanoja, joilta löytyy ennalta määritelty tarkoitus. Tämän takia ohjelmoija ei pysty käyttämään avainsanoja kuten sanaa ”public” muuttujan, metodin tai luokan nimenä. Näistä 67 avainsanasta 16 on kontekstista riippuen varattuja ja näitä voidaan joissain tapauksissa käyttää muuttujan, metodin tai luokan nimenä, toisin kuin normaaleja varattuja sanoja. Suurin osa ohjelmointiympäristöistä (eng. IDE, integrated development environment) korostaakin näitä avainsanoja koodin värityksellä, jotta näiden erityistarkoitus Javassa on helpommin tunnistettavissa.
Luettelo Java-avainsanoista.
Datatyypit:
 Määrittää loogisen muuttujan, jolla voi olla vain arvot "true" (tosi) tai "false" (epätosi). Oletusarvoisesti loogisen primitiivityypin arvo on epätosi. Tätä avainsanaa käytetään myös ilmoittamaan, että menetelmä palauttaa primitiivityypin codice_1 arvon.
 Määrittää merkkimuuttujan, joka voi sisältää minkä tahansa merkin Java-lähdetiedoston merkistöstä.
 Määrittelee kokonaislukumuuttujan, joka voi sisältää 64-bittisen etumerkillisen kahden komplementin kokonaisluvun. [6] Tätä avainsanaa käytetään myös ilmoittamaan, että metodi palauttaa codice_5 tyyppisen arvon. [8]
 Määrittelee kokonaislukumuuttujan, joka voi sisältää 16-bittisen etumerkillisen kahden komplementin kokonaisluvun. [6] Tätä avainsanaa käytetään myös ilmoittamaan, että metodi palauttaa codice_6 tyyppisen arvon. [8]
 Int määrittely saa 32-bittisen etumerkillisen kahden komplementin kokonaisluvun. Sillä on pienin arvo (formula_1) ja suurin arvo (formula_2). Int tyypiseen muuttujaan voi siis tallentaa kokonaislukuja sen suurimman ja pienimmän arvon väliltä.
 Byte tarkoittaa 8-bittistä etumerkillistä kahden komplementin kokonaislukua. Sillä on pienin arvo (-128) ja suurin arvo (127). Byte voi siis sisältää kokonaislukuja väliltä -128 ja 127. 
 Javassa float datatyyppi on yhden tarkkuuden 32-bittinen liukuluku. Float tyyppinen muuttuja voi siis sisältää desimaaliluvun, kuten vaikka 0.0001. 
 Javassa double datatyyppi on kahden tarkkuuden 64-bittinen liukuluku. Double tyyppinen muuttuja on samanlainen kuin float, mutta vielä tarkempi. Double datatyyppi voi siis varastoida vielä pienempiä arvoja.
 String tyyppi ei ole primitiivinen datatyyppi, mutta javassa on luokka "String", jolla on paljon eri metodeja merkkijonojen käyttämiseen ja manipuloimiseen. Javassa voit siis luoda string tyyppisen muuttujan. Toisin kuin string, primitiivisiä datatyyppejä ovat esimerkiksi int, float, double, char ja boolean.
Näkyvyys:
 codice_13 avainsanaa käytetään menetelmän, kentän tai sisäisen luokan määrittelyssä; yksityisiin jäseniin pääsevät vain muut oman luokkansa jäsenet. Private -tyyppistä metodia ei siis voida kutsua koodin muista luokista. 
 codice_15 avainsanaa käytetään luokan, menetelmän tai kentän "näkyvyyden" määrittelyssä; minkä tahansa luokan jäsenet voivat käyttää julkisia luokkia, menetelmiä ja kenttiä. 
 codice_18 määritetyt ominaisuudet ovat käytettävissä sen luokan lapsiluokilla. codice_18 toimii siis kuin private määritelmä, mutta lapsiluokilla on pääsy näin määriteltyihin ominaisuukksiin.
 codice_21 määrittely tarkoittaa sitä, että vain sen kyseisen paketin sisällä voidaan käyttää codice_20 määriteltyjä asioita. codice_21 määrittely toimii siis samalla tavalla kuin public määrittely, mutta paketin ulkopuoliset kutsut eivät toimi. Javassa tämä on oletusarvoinen näkyvyysmäärite. 
 codice_24 avainsanaa käytetään ilmoittamaan, että menetelmä ei palauta arvoa. 
Silmukat ja lausekkeet:
 codice_27 -avainsanaa käytetään for-silmukan luomiseen. Lausekkeessa määritellään muuttujan alustus, looginen lauseke ja inkrementaatio. Muuttujan alustus suoritetaan ensin, jonka jälkeen looginen lauseke arvioidaan. Jos lausekkeen arvo on "true", silmukan sisällä olevat lausekkeet suoritetaan ja lopuksi suoritetaan inkrementaatio. Tämän jälkeen looginen lauseke arvioidaan uudelleen. Tätä jatketaan, kunnes looginen lauseke saa arvon "false", jolloin silmukka päättyy. Tyypillisesti for-silmukkaa käytetään, kun kierrosten lukumäärä on tiedossa.
 J2SE 5.0:sta alkaen for-avainsanaa voidaan käyttää myös niin kutsutun "codice_28-silmukan" luomiseen, joka määrittelee taulukon tai iteroitavan objektin, jonka jokainen alkio voidaan käydä läpi yksi kerrallaan. Näin jokainen silmukan iteraatio suorittaa silmukkaan liittyvän koodilohkon käyttäen eri elementtiä taulukossa tai objektissa.
 codice_29 -avainsanaa käytetään yhdessä codice_31-avainsanan kanssa luomaan codice_32-silmukka, joka suorittaa ensin silmukan sisällä olevan koodilohkon ja arvioi sitten while-avainsanan yhteydessä olevaa loogista lauseketta. Mikäli lausekkeen arvo on "true", koodilohko suoritetaan uudelleen. Tätä jatketaan, kunnes looginen lauseke saa arvon "false", jolloin silmukka päättyy.
 codice_31 -avainsanaa käytetään while-silmukan luomiseen, joka arvioi ensin loogista lauseketta ja suorittaa sen jälkeen silmukkaan liittyvän koodilohkon, jos lauseke saa arvon "true". Tätä jatketaan, kunnes lauseke saa arvon "false". While-avainsanaa voidaan myös käyttää codice_32-silmukan luomiseen.
 codice_36 -avainsanaa käytetään silmukassa nykyisen suorituksen lopettamiseen ja silmukasta poistumiseen. Yleensä jonkin ehtolausekkeen yhteydessä mikäli silmukasta halutaan poistua aikaisemmin tai lopetusehdon yhteydessä esimerkiksi while(true) -ikisilmukassa. Break-avainsanaa käytetään myös codice_38-rakenteessa poistumaan switch-lohkosta.
 codice_39 -avainsanaa käytetään ohjelman suorituksen jatkamiseen nykyisen silmukan lopusta tai siirtymään silmukassa seuraavaan kierrokseen kesken suorituksen.
 codice_41 -avainsanaa käytetään codice_41 -lauseen luomiseen, joka testaa loogisen lausekkeen; jos lausekkeen arvo on “true”, codice_41 -lauseeseen liittyvä lausekelohko suoritetaan. Tätä avainsanaa voidaan käyttää myös codice_45 -lausekkeen luomiseen.
 codice_47 -avainsanaa käytetään codice_41 -avainsanan kanssa codice_45 -lausekkeen luomiseen, joka testaa loogisen lausekkeen; jos lausekkeen arvo on “true”, codice_41 -lauseeseen liittyvä lausekelohko arvioidaan; jos sen arvo on “false”, codice_46 -lauseeseen liittyvä lausekelohko suoritetaan.
 codice_53 -avainsanaa käytetään yhdessä codice_54 ja codice_55 avainsanojen kanssa codice_52 käskyn luomiseen, joka arvioi muuttujan, vertaa sen arvon tiettyyn codice_54:en ja suorittaa kyseiseen codice_54:en liittyvän lauseiden lohkon. Jos mikään codice_54 ei vastaa arvoa, codice_55 -avainsanalla merkitty valinnainen lohko suoritetaan, jos se on sisälletty.
 codice_53 -lohkon lauseke voidaan nimetä yhdellä tai useammalla codice_54 tai codice_55 -avainsanalla. codice_65 -lauseke arvioi lausekkeensa ja suorittaa sen jälkeen kaikki lauseet, jotka liittyvät vastaavaan codice_54 -nimikkeeseen.
 codice_55 -avainsanaa voidaan valinnaisesti käyttää codice_52 -lausekkeessa nimetäkseen lauseiden lohkon, joka suoritetaan, jos mikään codice_54 ei vastaa määritettyä arvoa. Toisaalta codice_55 -avainsanaa voidaan myös käyttää Java-annotaatiossa oletusarvojen määrittämiseen. Java 8:sta lähtien codice_55 -avainsanalla voidaan sallia rajapinnan metodin toteutuksen määrittäminen.
 codice_73 -avainsanaa käytetään edustamaan sen luokan instanssia, jossa se esiintyy. codice_73 -avainsanaa voidaan käyttää luokan jäsenten käyttämiseen ja nykyisen instanssin viittaamiseen. codice_73 -avainsanaa käytetään myös välittämään kutsu yhdestä rakentajasta toiseen rakentajaan samassa luokassa.
Poikkeukset:
 codice_77 -avainsanaa käytetään määrittämään lausekelohko, jossa on poikkeuskäsittely. Jos codice_77 -lohkon sisällä heitetään poikkeus, valinnainen codice_80 -lohko voi käsitellä ilmoitettuja poikkeustyyppejä. Lisäksi voidaan ilmoittaa valinnainen codice_81 -lohko, joka suoritetaan, kun suoritus poistuu codice_77 -lohkosta ja codice_80 -lausekkeista riippumatta siitä, heitetäänkö poikkeus vai ei. codice_77 -lohkossa on oltava vähintään yksi codice_80 -lauseke tai codice_81 -lohko.
 codice_80 -avainsanaa käytetään yhdessä codice_77 -lohkon ja valinnaisen codice_81 -lohkon kanssa. codice_80 -lohkon lausekkeet määrittävät, mitä tehdään, jos codice_77 -lohko heittää tietyn tyyppisen poikkeuksen.
 codice_81 -avainsanaa käytetäänän määrittämään lausekelohko lohkolle, joka on määritelty aiemmin codice_77 -avainsanalla. codice_81 -lohko suoritetaan sen jälkeen, kun suoritus on poistunut codice_77 -lohkosta ja siihen liittyvistä codice_80 -lausekkeista riippumatta siitä, onko poikkeus heitetty tai otettu kiinni tai onko suoritus jättänyt metodin kesken codice_77 - tai codice_80 -lohkon codice_101 -avainsanalla.
 codice_102 -avainsana aiheuttaa ilmoitetun poikkeustapauksen heittämisen. Tämä aiheuttaa sen, että suoritus jatkuu ensimmäisellä ympäröivällä poikkeuksen käsittelijällä, joka on ilmoitettu codice_80 -avainsanalla käsittelemään tehtävän kanssa yhteensopivaa poikkeustyyppiä. Jos nykyisestä metodista ei löydy tällaista poikkeuksen käsittelijää, metodi palaa ja prosessi toistetaan kutsuvassa metodissa. Jos poikkeuksen käsittelijää ei löydy mistään pinossa olevasta metodikutsusta, poikkeus siirretään säikeen sieppaamattomalle poikkeuksen käsittelijälle.
 codice_105 -avainsanaa käytetään metodi-ilmoituksissa määrittämään, mitä poikkeuksia ei käsitellä metodissa vaan ne siirretään ohjelman seuraavalle korkeammalle tasolle. Kaikki metodissa olevat vangitsemattomat poikkeukset, jotka eivät ole codice_107 -olioita, on ilmoitettava codice_105-avainsanalla.
Kontekstista riippuen varattuja avainsanoja:
codice_109.
codice_110
codice_111
codice_112
codice_113
codice_114
codice_115
codice_116
codice_117
codice_118
codice_119
codice_120
codice_121
codice_122
codice_123
codice_124
Muita varattuja avainsanoja:
 Alaviiva lisättiin varattujen avainsanojen joukkoon Java 9:n myötä, eikä sitä voi enää käyttää muuttujan nimenä enää.
codice_109
codice_127
codice_128
codice_129
 enum-avainsanalla määritellään lueteltu tyyppi -muuttuja (), joka on Javassa pohjimmiltaan luokka.
 Käytetään luokan määrittelyssä osoittamaan luokan superluokka.
 Totuusarvomuuttujan (boolean) "epätosi"-arvo.
codice_133
codice_134
codice_135
codice_136
codice_137
codice_138
codice_139
 codice_140 -avainsanaa käytetään uuden luokka- tai listaobjektin luomisessa. 
codice_142
 Käytetään metodin lopussa. codice_101 -avainsanan jälkeen määritellään myös metodin palauttama arvo, mikäli sillä on sellainen tehtävä. 
codice_145
codice_146
codice_147
codice_148
 Totuusarvomuuttujan (boolean) "tosi"-arvo.
codice_150
Käyttämättömät, mutta varatut avainsanat:
 Vaikka codice_129 on varattu avainsana Javassa, niin sillä ei ole funktiota. Vakioiden määrittelyyn käytetään Javassa codice_133 avainsanaa.
 Vaikka codice_134 on varattu avainsana Javassa, niin sillä ei ole funktiota.
 codice_156 avainsanaa käytettiin Javan aiemmissa versioissa rajoittamaan liukulukujen tarkkuuden arvoja, mutta on nykyversiossa tarkoitukseton, joskin varattu avainsana.