Bir proqramda boşluq (white space) və rəylər (comments) xaricində hər şey bir işarə yaxud simvoldur (token-dir). Bu, compiler-in işlədiyi və mənası olan ən kiçik proqram parçasıdır. Java-nın simvolları Unicode-dur.
Java-da 5 fərqli tipdə simvol (token) var:
- İsim və ya zərf (identifier): i, k, name, age və s. (dəyişən adları); MyClass, Business və s. (sinif adları); calculateSalary, showStudents və s. (metod adları).
- Açar sözləri: class, int, for, new, if və s.
- Dəyər ifadələri, sabitlər yaxud literal (yəni dəyişənlərə mənimsədilən ifadələr) (literal - “dəyəri sabit olan” deməkdir): 5, false, true, 6.85, ‘s’, “Hello World” və s.
- Ayırıcı: Java-da mövcud olan 12 ədəd ayırıcı işarəsi bunlardır ( ) { } [ ] ; , . … @ : : (Bunlardan array-ləri, blokları, cümlələri və s. ayırmaq üçün istifadə olunur)
- Operatorlar: = + ? : * == < > və s. (Ümumilikdə 38 operator var, qarşıda hamısı izah olunacaq)
Java-da bütün kodları bu 5 tip simvoldan, işarədən istifadə edərək yazırıq. Bütün proqram bu token-lərdən ibarətdir. Compiler onların hamısını tək-tək işləyir, ona görə də onların hər birinin doğru şəkildə istifadə olunması mütləqdir.