عند تشغيل سكربت Python قصير، يقوم المفسّر بتنفيذ الملف من الأعلى إلى الأسفل، بدءاً من أول تعليمة برمجية على المستوى العام (top-level). وللحفاظ على هذا الأسلوب في Java، فإنك تكتب أيضاً بضع تعليمات برمجية، لكن Java تشترط وجودها داخل “فئة” (class)، كما يبدأ التنفيذ من دالة محددة تحمل الاسم main.
لنفترض أن السكربت يقوم بحساب قيمة تمثل مساحة دائرة نصف قطرها 3 ثم يطبعها. في Python، يمكنك كتابة ذلك مباشرة على المستوى العام، أما في Java، فإن أصغر برنامج مكافئ يظهر اختلافاً جوهرياً ستلاحظه على الفور؛ إذ تتطلب Java بنية إضافية قبل أن تتمكن من تنفيذ أي شيء.
لاحظ كيف تقابل نسخة Python (المكتوبة على المستوى العام) نسخة Java التي تعتمد على استخدام class و main لتنفيذ المهمة نفسها المتعلقة بدائرة نصف قطرها 3.
تلك الهيكلية الإضافية ليست مجرد زينة؛ فبيئة تشغيل Java تحتاج إلى نقطة بداية محددة، وتجدها من خلال تحميل “فئة” (class) واستدعاء “دالة” (method) ذات توقيع (signature) محدد.
ابدأ بالتعرف على عناصر الصياغة البرمجية التي تحدد نقطة البداية تلك:
class ClassName {
public static void main(String[] args) {
// العبارات البرمجية
}
}
تُعد الفئة (class) حاويةً مُسمّاة تستخدمها Java لتجميع الكود البرمجي، وتقوم Java بتحميل هذه الحاوية قبل أن تتمكن من تنفيذ العبارات البرمجية الخاصة بك. تمثل الدالة main نقطة الدخول، بينما يمثل String[] args مصفوفةً تحتوي على وسائط سطر الأوامر (command line arguments)، وتحدد الأقواس {} الكتل البرمجية (blocks)، وتنتهي معظم العبارات البرمجية بفاصلة منقوطة ; لكي يتمكن المترجم (compiler) من تحديد نهاية كل عبارة.
تقوم Java أيضاً بعمليات الطباعة من خلال System.out.println(...)؛ حيث يتم استدعاء الدالة println ضمن تدفق المخرجات القياسي (standard output stream) الذي تديره بيئة التشغيل. وهذا يجعل عملية الطباعة تبدو أشبه باستدعاء دالة تابعة لكائن (object) بدلاً من استخدام الدالة المدمجة print في لغة Python.
استكشف الهيكل العام لملف Java، وتتبّع مكان بدء التنفيذ وكيفية تداخل الكتل البرمجية.
بمجرد تحديدك للدالة main، يمكنك توقع ما سيتم تنفيذه بدقة. تبدأ عملية التنفيذ من العبارة الأولى داخل main وتستمر بالتسلسل، تماماً كما هو الحال في لغة بايثون (Python)، ولكن ضمن نطاق جسم تلك الدالة فقط.
يستخدم هذا المثال قيمة تقريبية للثابت (باي) وهي 3؛ وذلك لضمان بقاء العمليات الحسابية ضمن نطاق الأعداد الصحيحة.