W poniższej tabeli zostały przedstawione słowa kluczowe języka Java. Słowa kluczowe to specjalnie zarezerwowane wyrazy, których nie można użyć jako nazw klas metod czy zmiennych. Słowa te mają przypisane sobie komendy, na podstawie których kompilator rozumie, co robi dany kod źródłowy.
Słowa true, false oraz null także są zarezerwowane i nie jest możliwe tworzenie zmiennych, klas czy metod o takich nazwach (nie są one słowami kluczowymi lecz literałami).
| abstract | assert | boolean | break | byte |
| case | catch | char | class | const |
| continue | default | do | double | else |
| enum | extends | final | finally | float |
| for | goto | if | implements | import |
| instanceof | int | interface | long | native |
| new | package | private | protected | public |
| return | short | static | strictfp | super |
| switch | synchronized | this | throw | throws |
| transient | try | void | volatile | while |
Słowa const oraz goto są zarezerwowane ale nie mają przypisanych komend. Komenda const w innych językach programowania jest używana do deklarowania stałych. W języku Java używa się do tego komend public static final. W Javie nie stosuje się także komendy goto, ponieważ została ona uznana za niebezpieczną.
Na kolejnych stronach zostaną szerzej opisane poszczególne słowa kluczowe.
W Javie trzy słowa kluczowe określają modyfikatory dostępu, są to:
privateDostęp do danej metody lub zmiennej jest możliwy tylko z wnętrza danej klasy.
Przykłady zastosowania identyfikatora private:
go() lub zmiennej key możliwe jest jedynie z wnętrza klasy KeywordPrivate.
protectedDostęp do metod lub zmiennych jest ograniczony jedynie do pakietu w którym znajduje się klasa lub dla potomków tej klasy.
Przykłady zastosowania identyfikatora protected:
publicDostęp do klasy, metod lub zmiennych możliwy jest z każdej innej klasy programu.
Przykłady zastosowania identyfikatora public:
KeywordPublic oraz jej metod i pól jest możliwy z klasy Main znajdującej się w innym pakiecie.
Poniżej przedstawione są modyfikatory klas, metod i/lub zmiennych:
abstractModyfikator stosowany do deklaracji klas, które nie mogą zostać zainicjalizowane lub metod, które muszą zostać zaimplementowane w nie abstrakcyjnym potomku danej klasy.
Przykład zastosowania abstract:
classSłowo kluczowe używane do deklarowania klas.
Przykład zastosowania class:
extendsModyfikator stosowany do deklaracji klasy będącej potomkiem innej klasy bazowej.
Przykład zastosowania extends:
finalZastosowanie tego modyfikatora pozwala na zadeklarowanie finalnej klasy, metody czy zmiennej. Dzięki słowu final niemożliwe jest dziedziczenie po finalnej klasie, przykrywanie metod czy ponowne inicjalizowanie zmiennych.
Przykład zastosowania final:
implementsSłowo kluczowe deklarujące klasę, która implementuje dany interfejs.
Przykład zastosowania implements:
interfaceModyfikator stosowany do deklaracji interfejsów.
Przykład zastosowania interface:
nativeOznaczenie metody, która jest napisana w innym języku programowania.
Przykład zastosowania native:
newSłowo kluczowe używane do tworzenia instancji klasy poprzez wywołanie konstruktora.
Przykład zastosowania new:
MyClass myClass = new MyClass();
staticModyfikator używany do deklaracji metod lub zmiennych statycznych.
Przykład zastosowania static:
strictfpModyfikator używany do oznaczania klas lub metod, w których wszystkie wyrażenia zmiennoprzecinkowe będą przeliczane zgodnie ze standardem IEEE 754.
Przykład zastosowania strictfp:
synchronizedZastosowanie tego modyfikatora powoduje synchronizację metody, czyli w danej chwili dostęp do metody może mieć tylko jeden wątek.
Przykład zastosowania synchronized:
transientModyfikator stosowany do oznaczania pól klasy. Zabezpiecza on te pola przed zapisywaniem do strumienia.
Przykład zastosowania transient:
volatileModyfikator zmiennych, zezwalający na modyfikowanie przez wiele wątków jednocześnie.
Przykład zastosowania volatile: