שגיאות תחביר Java מתייחסות לטעויות שנעשו על ידי מתכנת ביישום הדקדוק של שפת התכנות Java. זה לא מכסה טעויות בלוגיקה של התוכנית עצמה.
תחביר ג'אווה
ל-Java, כמו לכל שאר שפות התכנות, יש תחביר משלה. לדוגמה, כלל אחד של תחביר Java הוא שכל הפקודות חייבות להסתיים בנקודה-פסיק (;). תחביר Java הוא הרבה יותר פשוט מהתחביר של אנגלית או כל שפה "טבעית" אחרת אבל הוא גם הרבה יותר מחמיר. השארת פסיק מחוץ למשפט באנגלית רק גורמת לכותב להיראות מרושל. טעות טריוויאלית בתחביר ג'אווה הופכת את הפקודות לבלתי מובנות למחשב.
סרטון היום
שגיאת מהדר
שגיאות תחביר הן סוג של שגיאת מהדר. המשמעות היא שהם יתגלו מיד כאשר המתכנת ינסה להמיר את קוד המקור שלו לתוכנית. זה בניגוד לשגיאות זמן ריצה, שאינן מתגלות עד שהתוכנית פועלת בפועל.
דוגמאות לשגיאות תחביר
לקוד זה -- if x=3 System.out.println("Hello.") -- יש שלוש שגיאות תחביר:
ראשית, הפקודה אינה מסתיימת בנקודה-פסיק. שנית, ההשוואה המתרחשת לאחר ה"אם" חייבת להיות מוקפת בסוגריים. לבסוף, ההשוואה עצמה משתמשת באופרטור ההקצאה "=" ולא באופרטור ההשוואה "==". כל אחד מאלה ייצור שגיאת תחביר של Java. הנה הפקודה כתובה כמו שצריך:
if (x==3) System.out.println("שלום.");