Java proqramında söz sırası - öncəki məqalədə ( https://kofe.al/faridafatali/posts/java-da-simvollar ) qeyd olunan 5 tip simvol, o simvollar arasındakı boşluq və uyğun yerlərdə yazılmış rəylərdən ibarətdir. Buna söz qaydaları deyilir, yəni leksik qrammatika (lexical grammar). Bu, işin sözlə bağlı hissəsidir, hansı ki, sözlərin, ifadələrin hər biri doğru şəkildə yazılmalıdır, hər hansı hərf yaxud simvol səhvi etmək olmaz.
Sözlər ayrılıqda leksik qaydaya uyğun olaraq doğru yazılmış da olsa, bu, cümlənin düzgün yazıldığı mənasına gəlmir. Buna görə də sözlərin düzgün sıralama ilə yazılması ilə mütləqdir. Bir proqramın xətasız bir şəkildə compile olunub işləyə bilməsi üçün simvolların doğru şəkildə, qaydaya əsasən yazılıb istifadə olunması mütləqdir, yəni onların istifadə sırası düzgün olmalıdır. Buna sintaktik qrammatika deyilir (syntactic grammar).
Compiler ilk öncə sözlərin leksikonunu, yəni ayrılıqda düzgün yazılışını yoxlayır (Lexical Analyzer), sonra da onların sırasının düzgünlüyünü yoxlayır (Syntax Analyzer), sonra aşağıya doğru digər şeyləri yoxlayır, məsələn, int dəyişəninə 20 mənimsədilib, int - ona ədəd mənimsədiləsi bir ifadədirmi, mənasına baxır, bütün bu proseslərdən keçir, yoxlayır, xəta yoxdursa, baytkodu generasiya edir (Intermediate Code Generator) və .class faylı yaranır, xəta varsa, çıxır.
Proses ümumilikdə belə gedir: