Java ma dwie fundamentalne kategorie typów: primitives (proste wartości przechowywane bezpośrednio) i reference types (obiekty, gdzie zmienna przechowuje referencję/wskaźnik do obiektu). Zachowują się one bardzo różnie w pamięci, przy przypisaniu i porównaniu.
8 typów pierwotnych
;
;
;
;
;
;
;
;
