Syntax در جاوا — Java Syntax

Syntax در جاوا

Java Syntax
مقدمه
در این درس با Syntax یا قواعد نوشتاری زبان Java آشنا می‌شویم. هر زبان برنامه‌نویسی مجموعه‌ای از قوانین دارد که مشخص می‌کند دستورات چگونه باید نوشته شوند. اگر این قوانین رعایت نشوند، برنامه معمولاً با خطای Syntax Error مواجه می‌شود.

Syntax چیست؟

کلمه Syntax به مجموعه قوانینی گفته می‌شود که نحوه صحیح نوشتن دستورات یک زبان برنامه‌نویسی را مشخص می‌کند.

در زبان Java نیز برای تعریف کلاس‌ها، متدها، متغیرها و دستورات مختلف، قوانین مشخصی وجود دارد. رعایت این قوانین باعث می‌شود کامپایلر بتواند کد ما را به‌درستی تشخیص دهد و آن را کامپایل کند.

نکته مهم:
Syntax را می‌توان مانند قواعد دستور زبان در زبان‌های طبیعی در نظر گرفت. همان‌طور که جابه‌جایی یا حذف بعضی کلمات می‌تواند یک جمله را نادرست کند، اشتباه در Syntax نیز می‌تواند باعث خطای برنامه شود.

ساختار پایه یک برنامه جاوا

یک برنامه ساده جاوا معمولاً از یک کلاس تشکیل می‌شود و در بسیاری از برنامه‌های ابتدایی، متد main() محل شروع اجرای برنامه است.

public class Main {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

در این مثال، عبارت public class Main یک کلاس با نام Main تعریف می‌کند.

دستور public static void main(String[] args) متد اصلی برنامه است و اجرای برنامه از آن آغاز می‌شود.

دستور System.out.println() نیز برای نمایش متن در خروجی استفاده شده است.

استفاده از آکولادها

در جاوا برای مشخص کردن محدوده کلاس‌ها، متدها و بسیاری از ساختارهای برنامه از آکولادهای { } استفاده می‌کنیم.

آکولاد باز { شروع یک بلوک کد و آکولاد بسته } پایان آن بلوک را مشخص می‌کند.

public class Main {
    public static void main(String[] args) {
        System.out.println("Java");
    }
}

در مثال بالا، آکولادهای مربوط به کلاس و آکولادهای مربوط به متد main() هرکدام محدوده مربوط به خود را مشخص می‌کنند.

سمی‌کالن در جاوا

بسیاری از دستورات جاوا با علامت سمی‌کالن ; به پایان می‌رسند.

System.out.println("Hello");
System.out.println("Java");

در این مثال هر دو دستور با علامت ; به پایان رسیده‌اند.

اشتباه رایج:
اگر سمی‌کالن را در جایی که لازم است فراموش کنیم، ممکن است کامپایلر خطای Syntax نمایش دهد.

نوشتن چند دستور

در یک برنامه جاوا می‌توان چند دستور را پشت سر هم نوشت. معمولاً هر دستور با یک سمی‌کالن از دستور بعدی جدا می‌شود.

public class Main {
    public static void main(String[] args) {
        System.out.println("Hello");
        System.out.println("Welcome");
        System.out.println("Java Programming");
    }
}
خروجی برنامه:
Hello
Welcome
Java Programming

حساس بودن جاوا به حروف کوچک و بزرگ

زبان Java نسبت به حروف کوچک و بزرگ حساس است. به این ویژگی Case Sensitive گفته می‌شود.

برای مثال، نام‌های age و Age در جاوا دو نام متفاوت محسوب می‌شوند.

int age = 20;
int Age = 30;

System.out.println(age);
System.out.println(Age);
خروجی:
20
30
نکته مهم:
main، Main و MAIN برای جاوا سه نام متفاوت هستند.

فاصله‌ها و تورفتگی‌ها

جاوا معمولاً فاصله‌های اضافی و تورفتگی‌های مختلف را نادیده می‌گیرد؛ بنابراین می‌توان کد را با فاصله و خط‌بندی مناسب مرتب کرد تا خوانایی آن بیشتر شود.

برای مثال کد زیر از نظر عملکرد با نسخه مرتب‌شده آن تفاوتی ندارد، اما خوانایی آن بسیار کمتر است.

public class Main{public static void main(String[] args){System.out.println("Hello");}}

بهتر است همان برنامه را به شکل مرتب و خوانا بنویسیم:

public class Main {
    public static void main(String[] args) {
        System.out.println("Hello");
    }
}
نکته:
تورفتگی و فاصله‌گذاری مناسب معمولاً برای کامپایلر ضروری نیست، اما برای خوانایی و نگهداری بهتر کد بسیار مهم است.

قواعد نام‌گذاری

در جاوا برای نام‌گذاری متغیرها، کلاس‌ها، متدها و سایر عناصر برنامه باید قوانین مشخصی را رعایت کنیم.

نام‌ها می‌توانند شامل حروف، اعداد، علامت زیرخط _ و علامت دلار $ باشند، اما نمی‌توان نام را با یک عدد آغاز کرد.

int age = 25;
int studentAge = 20;
int student_age = 22;
نام‌گذاری نادرست:
نام یک متغیر نمی‌تواند با عدد شروع شود.
int 2age = 25;

کلمات کلیدی Java

در زبان جاوا تعدادی کلمه دارای معنی خاص هستند و نمی‌توان از آن‌ها به‌عنوان نام معمولی متغیر یا کلاس استفاده کرد. به این کلمات Keywords گفته می‌شود.

برای مثال کلمات class، public، static، void و int معنای مشخصی در زبان جاوا دارند.

نکته:
کلمات کلیدی بخشی از Syntax زبان جاوا هستند و استفاده نادرست از آن‌ها می‌تواند باعث خطای کامپایل شود.

رشته‌های متنی

برای نمایش یک رشته متنی در جاوا معمولاً متن را داخل علامت نقل‌قول دوتایی قرار می‌دهیم.

System.out.println("Welcome to Java");
خروجی:
Welcome to Java

خطای Syntax

اگر قوانین نوشتاری جاوا را رعایت نکنیم، ممکن است هنگام کامپایل برنامه با Syntax Error مواجه شویم.

برای مثال، در کد زیر سمی‌کالن بعد از دستور چاپ حذف شده است:

public class Main {
    public static void main(String[] args) {
        System.out.println("Hello")
    }
}

در این حالت کامپایلر نمی‌تواند ساختار دستور را به شکل صحیح تشخیص دهد و خطا گزارش می‌کند.

توجه:
پیام خطا معمولاً محل تقریبی مشکل را نشان می‌دهد، اما گاهی علت اصلی خطا ممکن است در خط قبل قرار داشته باشد. بنابراین هنگام مشاهده خطا باید چند خط اطراف محل اعلام‌شده را نیز بررسی کنیم.

جمع‌بندی

در این درس با مفهوم Syntax در زبان جاوا آشنا شدیم و ساختار کلی یک برنامه جاوا را بررسی کردیم.

همچنین با آکولادها، سمی‌کالن، نحوه نوشتن چند دستور، حساس بودن جاوا به حروف کوچک و بزرگ، فاصله‌گذاری، قواعد نام‌گذاری، کلمات کلیدی، رشته‌های متنی و خطاهای Syntax آشنا شدیم.

نکات مهم این درس

  • Syntax مجموعه قوانین نوشتاری زبان جاوا است.
  • بسیاری از دستورات جاوا با سمی‌کالن ; پایان می‌یابند.
  • آکولادهای { } محدوده بلوک‌های کد را مشخص می‌کنند.
  • جاوا یک زبان Case Sensitive است.
  • نام متغیرها نمی‌توانند با عدد شروع شوند.
  • کلمات کلیدی جاوا معنای خاصی دارند و نمی‌توان از آن‌ها به‌عنوان نام معمولی استفاده کرد.
  • رعایت نکردن قواعد Syntax می‌تواند باعث خطای کامپایل شود.
  • مرتب و خوانا نوشتن کد، نگهداری و خطایابی برنامه را آسان‌تر می‌کند.

تمرین

برنامه‌ای در جاوا بنویسید که سه خط زیر را در خروجی نمایش دهد:

My name is Ali
I am learning Java
Java is interesting

در هنگام نوشتن برنامه به استفاده صحیح از آکولادها، سمی‌کالن و علامت‌های نقل‌قول توجه کنید.

نکته پایانی:
تسلط بر Syntax یکی از اولین قدم‌های یادگیری جاوا است. اگر ساختار صحیح دستورات را از همان ابتدا به‌درستی یاد بگیرید، در درس‌های بعدی که با متغیرها، انواع داده، عملگرها و ساختارهای کنترلی کار می‌کنیم، نوشتن و درک کد برای شما بسیار ساده‌تر خواهد شد.