منتدي حضن الغريب
أهلا وسهلا بك ضيفنا الكريم، إذا كانت هذه زيارتك الأولى للمنتدى، فيرجى التكرم
بالتسجيل ،أما إذا رغبت بقراءة المواضيع والإطلاع فتفضل بزيارة القسم الذي ترغب أدناه.
وجميع الروابط بالمنتدى متاحة اليك حتى لانضغط على احد بالتسجيل واذا اعجبك منتدنا
فانضم الينا وشكرا لكم جمعيا زورنا الكرام
منتدي حضن الغريب
أهلا وسهلا بك ضيفنا الكريم، إذا كانت هذه زيارتك الأولى للمنتدى، فيرجى التكرم
بالتسجيل ،أما إذا رغبت بقراءة المواضيع والإطلاع فتفضل بزيارة القسم الذي ترغب أدناه.
وجميع الروابط بالمنتدى متاحة اليك حتى لانضغط على احد بالتسجيل واذا اعجبك منتدنا
فانضم الينا وشكرا لكم جمعيا زورنا الكرام
منتدي حضن الغريب
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

منتدي حضن الغريب


 

التسجيلالتسجيل  الرئيسيةالرئيسية  أحدث الصورأحدث الصور  دخولدخول  

 

 سلسلة دروس الجافا الدرس الثانى عشر

اذهب الى الأسفل 
كاتب الموضوعرسالة
nsrbulhmd
المدير العام
المدير العام
nsrbulhmd


الجنس : ذكر
عدد الرسائل : 1282
تعاليق : عندما تنتقد أحداً فبعين النحل تعود أن تـُبصـِر
ولا تنظـُر للناس
بعين الذباب فتقع على ماهو مُستقذِر
و سأحكي لك قصه العنزة والذئب حتى لا
تأمن من يـُمكِر
وحينما يثق بك أحد فإياك ثم إياك أن تـُغدِر


تاريخ التسجيل : 09/02/2009

الاضافات
منتدنا على الفيس بوك:

سلسلة دروس الجافا      الدرس الثانى عشر Empty
مُساهمةموضوع: سلسلة دروس الجافا الدرس الثانى عشر   سلسلة دروس الجافا      الدرس الثانى عشر Icon_minitime1الثلاثاء 24 مارس 2009, 8:07 pm

السلام عليكم ورحمة الله وبركاته..







درسنا اليوم سيكون تعريف فئة التاريخ، و سنلقي فيه بعض الضوء على الوظائف
في الجافا، ان الدرس سيكون طويلاً نوعاً ما، و لكنه يضع الأسس المهمة لكل
ما سيلي من برامج ان شاء الله.



لقد اخترت لكم فئة تعتبر المثال المفضّل عند معظم المصممين لوضوحها و سهولة استخدامها. لنضع التصميم المبدئي لهذه الفئة مع بعض :-)



Date
الصفات
رقم يمثل اليوم
رقم يمثل الشهر
رقم يمثل السنة





لنقم بكتابة ذلك بالجافا. لنتوقف و نفكّر قليلاً. ما الذي نقوم بتعريفه؟ اننا نقوم بتعريف فئة اسمها Date، اذاً سنكتب التالي:



سلسلة دروس الجافا      الدرس الثانى عشر L12_Date_0


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



لذا سنضع ثلاثة متغيرات رقمية (في الوقت الحاضر، و قد نغيرها فيما بعد) لكل صفة من الصفات، هكذا:



سلسلة دروس الجافا      الدرس الثانى عشر L12_Date_1


ان الأعضاء من هذه الفئة لا يمكنهم التصرف أبداً. اننا حتى لا نستطيع
ان نستعلم عن التاريخ، لذا سنقوم بتعريف بعض القدرات لهذه الفئة. و
القدرات بلغة البرمجة هي الوظائف (Method) التي نعرفها في أي فئة. ما
رأيكم لو نتوقف هنا قليلاً، و لنضع الوظائف التي نريدها في فئة التاريخ
(Date) موضع درسنا.



Date
الصفات الوظائف
رقم يمثل اليوم
رقم يمثل الشهر
رقم يمثل السنة
امكانية الاستعلام عن التاريخ
امكانية وضع التاريخ





الوظيفة هي مجموعة من الأوامر المكتوبة بلغة الجافا، تقوم بمهمة محددة.
لنقم بوضع الامكانية الأولى و هي الاستعلام عن التاريخ، سيظهر البرنامج
كما يلي:



سلسلة دروس الجافا      الدرس الثانى عشر L12_Date_2



سنتوقف هنا قليلاً، لننظر للكود الذي تركته في المساحة البيضاء. فقد قمنا فيه بتعريف الوظيفة. في السطر الأول من الوظيفة نرى التالي:



public String getDate(){



اننا في هذا السطر نقوم بتعريف وظيفة. الكلمة الأولى public لو
تذكرون اننا تحدثنا عنها عندما كتبنا أول برنامج بالجافا. فهذه الكلمة هي
مغيّر الدخول أو (Access Modifier). و قد وضعناه لهذه الوظيفة (Method)
عام، لأننا نريد لأي فئة أو برنامج آخر يقومون باستخدام هذه الفئة أو
اعضاءها أن يتمكنوا من الاستعلام عن التاريخ.


ان أي وظيفة في أي فئة لابد أن يكون لها نوع اعادة (Return type). و في
مثالنا، ما الذي نريده ان يود الينا.... التاريخ أليس كذلك؟ حسناً التاريخ
الذي نريده سيكون في صيغة نصية (String)



الكلمة التالية هي اسم الوظيفة و يقوم المبرمج بتحديدها. و هذه الكلمة
تكون عادة في صيغة فعل يدل على الوظيفة التي تؤديها هذه الوظيفة. في
حالتنا هذه سمّيناها:




getDate()



لأننا في الواقع نريدها أن تعيد لنا قيمة تخبرنا عن التاريخ. لابد
ان ينتهي تعريف أي وظيف بقوسين دائريين، و هما في هذه الوظيفة لا يحتويان
على أي شيء. ثم قوس المجموعة، ننتقل للسطر التالي و هو في داخل الوظيفة:



String str=day + "/" + month + "/" + year;



في السطر السابق نلاحظ اننا قمنا بتعريف (اعلان او اشهار) متغيّر من
نوع نصي كلمي: String و أسميناه str، و أعطيناه قيمة مبدئية عبارة عن شكل
التاريخ بحيث وضعنا اليوم ثم علامة "/" و الشهر، ثم علامة "/" ثم السنة. و
هكذا أصبح المتغير str فيه التاريخ المخصص لأي عضو في الفئة (والذي قد
يختلف من عضو إلى آخر)



في السطر التالي:




return str;



نلاحظ استخدام الكلمة return وهي في اللغة الانجليزية تعني (اعادة)
و هكذا كلمة return في السطر السابقة تقوم بارجاع القيمة التي تعيدها
الوظيفة. و لابد أن يكون ما يلي هذه الكلمة من نفس نوع return type
للوظيفة.


في مثالنا كان الـ return type هو String، و هكذا وضعنا بعد كلمة
return المتغير من نوع النص الكلمي String و كان في حالتنا المتغير str.


سلسلة دروس الجافا      الدرس الثانى عشر Title_right سلسلة دروس الجافا      الدرس الثانى عشر Spaceملخص الوظيفة السابقة سلسلة دروس الجافا      الدرس الثانى عشر Title_left






اننا في الوظيفة السابقة قمنا بتعريف امكانية من امكانيات أي عضو من
فئة التاريخ، و هي اعطاء قيمة التاريخ. و هو يعطيها في شكل نص كلمي
String.



ما رأيكم لو قمنا بتعريف الوظيفة الثانية معاً أيضاً و هي تحديد التاريخ.



سنكتبها في الجافا بهذا الشكل:



سلسلة دروس الجافا      الدرس الثانى عشر L12_Date_3


في الصورة السابقة نلاحظ اننا في تعريفنا لوظيفة تحديد التاريخ، قد
قمنا بتعريفها بطريقة تختلف قليلاً عن وظيفة الاستعلام. ولكن المبدأ هو
نفسه في الحالتين.



لنتابع معاً، السطر التالي:



public void setDate(int d, int m, int y){



هذه الوظيفة هي أيضاً public مثل سابقتها. و لكن انظروا إلى النوع
الذي تعيده: void و هو نوع متغيرات لم نتعرّض له أبداً. لأنه ببساطة ليس
نوعاً لمتغير. هو نوع ليخبرنا ان هذه الوظيفة لا تقوم باعادة أي قيمة.
انها تؤدي وظيفة محددة فقط لا غير.



نلاحظ أننا اسمينا الوظيفة: setDate و لكن ما تلاها ليس قوسين دائريين فارغين، بل فيهما السطر التالي:



int d, int m, int y



نطلق على ما سبق parameter list أو قائمة المتغيرات المدخلة
للوظيفة. في مثالنا هنا نريد ان نعطي التاريخ ثلاث قيم، قيمة لليوم، و
قيمة للشهر و قيمة للسنة. و هكذا قمنا بادخال ثلاث متغيرات هم d و m و y
بحيث يمثل كل منهم على الترتيب: day, month, year.



فنلق نظرة على ما هو داخل الوظيفة:




day = d;
month = m;
year = y;




اننا في داخل هذه الوظيفة نساوي المتغيرات التي عرفناها في الفئة (Date class) بالـ parameter list.


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





وفوق كل ذي علم عليم
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://nasserstar.ahlamontada.com
 
سلسلة دروس الجافا الدرس الثانى عشر
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدي حضن الغريب :: منتدى البرامج والكمبيوتر والحماية والماسنجر :: قسم الكمبيوتر والحماية والهواتف والشفرات-
انتقل الى: