عرض مشاركة واحدة
منتديات طلاب وطالبات جامعة الملك عبد العزيز منتديات طلاب وطالبات جامعة الملك عبد العزيز
قديم 01-11-2009, 09:43 PM   #3

أحـمـد ظـافـر

مشرف مُتألق سابق

الصورة الرمزية أحـمـد ظـافـر

 
تاريخ التسجيل: Oct 2008
كلية: كلية الهندسة
التخصص: مدنيّة
نوع الدراسة: إنتظام
المستوى: الرابع
البلد: الدول العربية
الجنس: ذكر
المشاركات: 2,472
افتراضي رد: سلسلة دروس تعلم لغـة الجافا ( أول برنامج تعمله بلغة الجافا ) الجزء الثاني

شرح للبرنــــــامج اللي كتبنــاه ::



تعـــال نشـــوف ::

السطر الأول يحتوي على تعريف الفئة (class).
و نحن هنا سنعرّف فئة جديدة اسمها HelloWorld. و قد اعتاد مبرمجو لغة الجافا على اعتماد تسمية الفئات بطريقة معيّنة (Naming Convention)

كلمة Public تسمى (مُغيّر دخول-Access Modifier) و هي تسبق تعريف الفئات classes والأعضاء Objects والمتغيّرات Variables و الوظائف Methods. و سنطّلع في دروس قادمة على غيرها من مغيرات الدخول ان شاء الله :-)

و مغيّر Public يعني أن هذه الفئة عامة و يمكن لأي فئة أخرى موجودة في الآلة التخيلية (virtual machine) أن تستخرج أعضاء منها، أو أن تقوم على تشغيلها.

و ملف الجافا قد يحتوي على تعريف لأكثر من فئة. و لكن فئة واحدة فقط يمكنها public و هي التي يتم تسمية الملف عليها.

فمثلاً، يمكنني أن أقول التالي:
كود:
public class FirstClass {
. .
. .
}

class SecondClass {
. .
. .
}
في المثال السابق يوجد لدينا ملف كتبناه على Pad أو NotePad و يحتوي على تعريف فئتين. و نلاحظ أن احداهما فقط هي التي تم تعريفها لتكون public و على هذه الأساس، سيكون اسم الملف على هذه الفئة، وفي مثالنا سيكون: FirstClass.java.

نلاحظ أن السطر الأوّل ينتهي برمز (}) و هو يعني أن تعريف الفئة (class) سيبدأ عند هذه النقطة. و بما أن لكل شيء بداية و نهاية، فإننا نتوقّع أن يتوقّف تعريف البرنامج عند العلامة المقابلة ({) و هذا يعني أن تعريف الفئات يكون دائماً محصوراً بين رمزي المجموعة :-)



السطر الثاني يأتي لتعريف وظيفة(method) من الوظائف. سنتعرّف على الوظائف بشكل مفصّل في درس قادم ان شاء الله. لكن ما يهمّنا الآن هو الوظيفة الموجودة بين أيدينا.

هذه الوظيفة هي ذات نوعية خاصة، انها ال main method و هي نقطة البداية لأي برنامج يتم تشغيله من مشغّل الدوس (Dos prompt).

لنعد بذاكرتنا قليلاً إلى الوراء، هل تذكرون ما قلناه حين تحدّثنا في مقارنة بين البرمجة بالطريقة التقليدية (Proccess Oriented) و البرمجة بالطريقة بالكائنات الشيئية؟ لقد ذكرنا شيئاً عن نقطة البداية. ففي البرمجة بالكائنات الشيئية نضع نقطة البداية، ثم يقوم أعضاء الفئات المختلفة بتقاذف الأحداث فيما بينها.

و لكن لابد من نقطة بداية. و في حالتنا نقطة البداية هي هذا السطر و ما يعقبه من أوامر محصورة بين قوسي المجموعة :-)

إن أي برنامج جافا، قد يتكون من عدة ملفات (بحيث يكون كل ملف محتوياً لى تعريف فئة)، و يجب أن تحتوي فئة واحدة عاى نقطة البداية، التي تتمثّل في وظيفة main.

وظيفة ال main method هي في الحقيقة نقطة البداية التي تتحدّث عنها الآلة التخيلية للجافا، في حالة قمنا بتشغيل أي ملف جافا من محرك الدوس. و هي في الواقع فئة تتبع للفئة بشكل عام و لا تخص الأعضاء المنتمين لهذه الفئة.




إن هذا السطر في الواقع يقوم باستدعاء و ظيفة println التي تقوم بكتابة ما يمرر لها في الأقواس (و في حالتنا هو Hello World). ما سبق هذه الوظيفة هو عنوان العضو و الفئة التي توجد فيها هذه الوظيفة، حتى تقوم الآلة التخيلية بتشغيلها بشكل صحيح



نقوم هنا بغلق الأقواس، و نلاحظ أن تعريف الفئة قد تضمّن تعريف الوظيفة main و نلاحظ أننا نغلق القوس الداخلي أولاً ثم الخارجي و هكذا.


ملاحظات ::
في السطر الثالث، الكلمة الأولى و هي System هي في الواقع اسم لفئة. و في هذه الفئة توجد صفة اسمها out.
out في الواقع هي عضو في فئة PrintStream و يستطيع أعضاء هذه الفئة استخدام وظيفة ال println :-)
هذا هو تسلسل هذ الكلمات.
تم التحدث عن الآلة التخيلية في هذا الدرس. و سنعرف عنها المزيد، تابعوا الدروس :-)

 

 

لا تنس #أذكار_الصباح
لا تنس #أذكار_المساء
استغفر الله العظيم الذي لا إله إلا هو الحي القيوم وأتوب إليه.
اللهم صل على محمد وعلى آله وأصحابه والتابعين.
اللهُمَّ إرحم موتَانآ وموتـــــَى المُسلِمينْ والمُسلِمآتْ
اللهُمَّ قِهمْ عذَابَ القـــَبْر وفِتنَته.

اللهُمَّ إٍنَّا نسألُكَ حُسنَ الخَاتِمة .

 

أحـمـد ظـافـر غير متواجد حالياً   رد مع اقتباس