دروس
(15) صفة في فئة عبارة عن عضو من فئة أخرى

عقارية المدينة 6-12-1430هـ للاعلان جوال 0507445115 حراج سيارات 19-4-1431هـ
افضل و اقوى و احلى و اجمل موقع افلام و فيديو يوتيوب youtube على الاطلاق للاعلان جوال 0507445115 بنات الرياض سعوديات نسائي بناتي حريمي

تابع حالة الطقس في اكبر و اشهر مدن المملكة العربية السعودية | منتديات | مقاطع فيديو تحميل افلام موقع يوتيوب youtube العاب بنات hguhf fkhj | تحميل صور jpldg w,v | بلاك بيري | بنات السعودية | قصص بنات

احصائيات سريعة
اقسام على الموقع
دروس في أنظمة التشغيل | ماي سكيول - MySQL | لفيجوال بيسك - Visual Basic | المات لاب Matlab | اللينكس و اليونكس | الاسمبلي - ASSEMBLY | الاوتلوك - Outlook | البرمجة تحت اللنكس -Linux Programming | البرمجة تحت وندوز بواسطة دوال ال win API | البرمجة في بيئة الدوت نت .Net | التصمبم والرسوم | الدلفي - Delphi | الجافا - Java | السي - C | الصوت و الصورة | الوورد - Word | القسم العام للأوفيس | الكوبول - COBOL | control panel-ftp | اوراكل - Oracle | اكسل - Excel | تحميل الملفات | برامج متنوعة | برامج التصفح | برامج الحماية | برامج إنترنت | تعرّف على الويب | بوربوينت - Power Point | images | دروس : كمبيوتر وصيانة | دروس مجلة نيوك phpnuke | دروس مسنجر MSN - yahoo - Gmail | دروس منتديات vBulletin | دروس الجوالات والهواتف | دروس السي بنل cpanel | دروس اكسس access | دروس بيونت شوب برو - point shop pro | دروس برمجة php - mysql | دروس برامج منوعة software | دروس ثري دي ماكس 3D max | دروس تطوير المواقع والمنتديات | دروس جافا سكريبت JavaScript | دروس دريم ويفر DreamWeaver | دروس شبكات Networks | دروس سويش - swish | دروس فلاش - flash | دروس فلاش mx | دروس فى نظام الوندوز WINDOWS | دروس فىالباسكال - Pascal | دروس فيجوال بيسك Visual Basic | دروس فرونت بيج - frontpage | دروس فوتوشوب photoshop | دروس هكر hacker crack virus | سي ++ | سي شارب - #C | فيجوال سي ++ - ++ Visual C | قسم البرمجة العام | دروس فى لغة HTML
البحث في المواد

اكثر المحتويات زيارة
الدوال في الاكسل (14,836 مشاهده)
تعريف الفن التشكيلي: (14,801 مشاهده)
ربط قاعدة بيانات أكسس (MS Access) مع برنامج الفيجوال بيسك بطريقة(ODBC) (10,761 مشاهده)
دروس في الأوفيس الأكسس - Access0- (10,234 مشاهده)
أنواع العلاقات وطريقة الربط بين الجداول. (10,165 مشاهده)
شرح طريقة استعمال الأوتلوك مع بريد الهوتميل (7,341 مشاهده)
تغيير لغة واجهة التطبيق من عربي الى انجليزي وبالعكس لـ Windows-based applications (7,335 مشاهده)
ما هي شبكة الانترنت: (6,452 مشاهده)
الدرس الثالث : بعض تطبيقات الدوال في اكسل (6,207 مشاهده)
تعريف الاستعلام وطريقة عرضه في آكسس، أنواع الاستعلامات، نافذة تحديد الاستعلام! (6,189 مشاهده)
اضافه صوت ونص لخلفيه في باور بوينت (6,180 مشاهده)
المنظور الفوتوغرافي Perspective Drawing (6,128 مشاهده)
ما هو برنامج الاكسل -00 (5,994 مشاهده)
أنشئ قاعدة بياناتك التي ستستند إليها في تعلم طريقة ربط الجداول والاستعلامات. (5,752 مشاهده)
الدرس الثاني : عمل خلفيات ملونة لشرائح (5,533 مشاهده)
نظام التشغيل (Windows) (5,526 مشاهده)
الدرس الأول : عمل شريحة في البوربوينت (5,431 مشاهده)
الدرس الثاني: بعض الحيل لتسهيل برنامج اكسل (5,426 مشاهده)
لإجراء العمليات الحسابية (4,946 مشاهده)
مقدمة عامة حول الاكسل وحيل خاصة بالاكسل0-- (4,914 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (4,870 مشاهده)
كيفية تنصيب Turbo C++ وتشغيل برنامج بلغة السي عليه!- (4,829 مشاهده)
vالدرس الأول : عمل شريحة في البوربوينت (4,819 مشاهده)
الدرس الثالث: كيفية عمل مراحل انتقالية للشرائح (4,810 مشاهده)
اضافة الحركات للصور والنصوص (4,744 مشاهده)
جديد مواد مع عشوائي
التحويل التلقائي للحروف ل- ل- ه إلى اسم الجلالة0---- (2,360 مشاهده)
النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0---النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0--- (1,776 مشاهده)
ضبط خيارات اللغة فى الـ Microsoft Word0--- (2,190 مشاهده)
استخدام لوحة المفاتيح في الـ Word0---- (2,383 مشاهده)
إضافة كلمة سر إلي ملفات الورد دون استخدام برامج0--- (2,320 مشاهده)
دمج المراسلات0-- (1,428 مشاهده)
وضع صورة كخلفية للنص0-- (1,870 مشاهده)
السماح للمستخدمين بتعديل أجزاء من ملف وورد محمي (Word2003)0--- (1,447 مشاهده)
كتابة الأرقام الكسرية ورموز المعادلات0-- (2,057 مشاهده)
درس كامل عن الدمج السهل من لوحة المفاتيح ف0-ي برنامج الـ Word (1,612 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (4,870 مشاهده)
دورة الأكسيس : الدرس الرابع : العلاقات0---- (2,661 مشاهده)
أساسيات في Access0--0 (2,376 مشاهده)
تصميم تقرير لطباعة البيانات0---- (2,233 مشاهده)
تصميم نموذج استعراض البيانات‏0--تصميم نموذج استعراض البيانات‏0-- (1,993 مشاهده)
تصميم نموذج إدخال‎ ‎البيانات0--- (2,240 مشاهده)
إنشاء قوائم خاصة باستخدام الماكرو(1)0-- (1,928 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (2)0-- (1,440 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (1)0- (1,510 مشاهده)
استعلامات SQL في Access - تعديل الجداول وإضافة الحقول0- (2,102 مشاهده)
استعلامات SQL في Access - تحديث البيانات الجدولية0-- (1,713 مشاهده)
الاستعلامات الإجرائية -4 (استعلام الحذف)0--- (1,169 مشاهده)
الاستعلامات الإجرائية -2 (استعلام الإلحاق)0--- (1,315 مشاهده)
تصميم تقرير لطباعة الإجمالي0--- (1,420 مشاهده)
استعلامات التحديد Select Query مع أمثله (1)0--- (1,876 مشاهده)
دروس > الجافا - Java > (15) صفة في فئة عبارة عن عضو من فئة أخرى
اعلانات في الموقع على جميع الصفحات

(15) صفة في فئة عبارة عن عضو من فئة أخرى

لسلام عليكم و رحمة الله و بركاته
(ملاحظة: يحتوي الدرس على عدد من الصور التي اجتهدت في اختزال حجمها قدر الاستطاعة، أرجو الصبر)


درسنا اليوم فيه شيء من الطول، و شيء من التفصيل. من فضلك لا تقرأه إلا و أنت في حالة ذهنية صافية غير مشوشة.. لأفضل النتائج.. والله الموفّق :-)   على فكرة.. فيه بعض الرياضيات أرجو أن يسعدكم هذا لعلمي بولع المبرمجين (وأنا منهم) بالرياضيات :)





تمهيد:

لنجرب أن نضع فئة الإنسان. ماهي صفاته و قدراته؟


عين، لسان، قلب، انه يفكر، يبدع.


ممتاز.


لنتصوّر أننا نرغب في كتابة فئة القلب. و نضع فيها صفات أي قلب:


يضخ الدم، ينبض.


رائع جداً..


الآن تصوّر أن عضواً من فئة القلب سيكون صفة لعضو فئة الانسان..


لغز؟ لنحلّه معاً عبر درس اليوم :)






مقدّمة المثال:

لنفترض أننا نرغب في بناء فئة للخط المستقيم. و حتى نبدأ فعلياً في ذلك. لابد من أن نعرف المزيد عن خصائص و مميزات الخط المستقيم أليس كذلك.


لنسأل أنفسنا: ماهو الخط المستقيم؟ حتى نجيب على هذا التساؤل لابد أن نعرف القليل عن خصائص الخط المستقيم. لنتأمّل الشكل التالي:
 














 


كما ترى في الشكل. لدينا نقطتان النقطة الأولى: P1 و الثانية P2. و يربط بينهما الخط المستقيم. إذا الخط المستقيم هو كل ما يربط بين نقطتين، أليس كذلك؟ حسناً إذا احداثيات النقطة الأولى P1 و احداثيات النقطة الثانية P2 يحددان معاً كيف نرسم الخط المستقيم.
 










نقطة توقّف..

قد يقول قائل منكم أن للخط لوناً وهو في الشكل اللون الأسود. فأقول صحيح. اللون صفة من صفات الخط. و قد يقول آخر أن لون النقاط أحمر فأقول خطأ. لأن لون النقاط من صفات النقاط و ليس من صفات الخط ;-) فلا تخلط الأمور.

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


لم تستوعب النقطة؟ لا تخف أبداً.. تابع الدرس و ان شاء الله تتوضح الأمور :)


إذاً لدينا الآن فئة الخط المستقيم Line. و لكن في حالتنا اليوم نحن مضطرون إلى بناء فئة أخرى.. ما هي؟


صحيح.. فئة النقطة و لنطلق عليها Point و أي نقطة في العالم تتكون من احداثيين (س، ص) أليس كذلك؟ و باللغة الانجليزية: (x,y).  لننظر إلى الشكل التالي:
 










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


و نلاحظ أيضا في الأرقام التي تجاور النقطة ان الاحداثي السيني تم تعريف أولاً. ثم تم تعريف الاحداثي الصادي.


و لكي نكتب الفئة في اللغة الانجليزية أرجو ملاحظة أن س= x، و أن ص=y. كما ارجو ملاحظة اتجاه اللغة. حيث ان الاتجاه بالانجليزي سيكون من اليسار لليمين هكذا: (x,y).


ملاحظة: سامحوني على رداءة خطي ههههههه :-)


 





كتابة البرامج:

الآن و بعد هذه الدراسة المتعمّقة في الهندسة الاحداثية. (أرجو أنها كانت خفيفة على قلوبكم) نستطيع ببساطة أن نبني معاً فئة النقطة أو Point. لنتأمّل الكود التالي:




لقد قمنا هنا بتعريف أبسط فئة للنقطة Point و هي فئة لها اثنتين من الخصائص. احداثي السينات، و احداثي الصادات :)


الآن سنقوم بكتابة ملف فئة الخط المستقيم. لنتأمّل الكود التالي:




تجدون أن الخط المستقيم له صفتان تميزانه (أو بمعنى أصح تميّزان أي عضو نقوم باستخراجه من هذه الفئة) و هما النقطة الأولى p1 و النقطة الثانية p2.


والآن لنلخّص ما فعلناه. لقد كتبنا فئة و هي فئة النقطة Point و هي فئة قائمة بذاتها. ثم كتبنا فئة الخط المستقيم Line و استخدمنا في تعريفها عضوين من الفئة الأولى. فالنقطة p1 في فئة الخط المستقيم عبارة عن صفة لعضو. و هي بحد ذاتها عضو من فئة النقطة Point. أتمنى أن تكون هذه النقطة واضحة :-)


والآن سنكتب برنامج ثالث مثلاً ليكون هو البرنامج الذي نستخدم فيه أعضاء من فئة الخط المستقيم مثلاً. و سأسمّيه Painter لأننا ان شاء الله سنكتب في نهاية هذه الدورة برنامج رسم بسيط :-) حسناً لنتأمّل هذا الكود:




لا تخف لا تخف :-) سنشرحه جزءاً جزءاً. بالطبع الهيكل العام للبرنامج مفهوم وواضح من دروس سابقة.






شرح كود برنامج Painter:

لننظر إلى الشكل:




نلاحظ عرض السطرين 5 و 6 فيهما استخراج عضوين هما line1 و line2 من فئة الخط المستقيم. ثم قمنا بعد ذلك بحجز الذاكرة لهما لكونها من فئة قمنا بتعريفها (Aggregate Data Type) كما شرحنا في الدرس الثالث عشر. هنا الطريق تمام و مفتوح





لننظر للشكل التالي:




في الشكل الأعلى نجد الأسطر من 8 و حتى السطر 13. في السطر الثامن نجد تعليقاً يخبرنا أننا سنقوم الآن بإعداد النقاط في السطرين اللذين قمنا بتعريفهما للاستخدام. لأننا لو تذكر في تعريفنا للخط المستقيم لم نقم باستخدام new لحجز المساحة لكلتا النقطتين. و هكذا وجب علينا في هذا البرنامج أن نقوم بذلك.
 










نقطة توقّف..

إن هذه الخطو ضرورية جداً جداً جداً جداً جداً. ستسأل لماذا.. تذكّر معي أننا قمنا بتعريف الخط المستقيم في البرنامج بأن فيه عضوين من فئة النقطة Point. و لم نقم بعد بحجز أي مساحة لهذين العضوين.

و هكذا لابد أن نقوم بحجز المساحة للنقطتين الخاصتين بالخط الأول و كذلك النقطيتن الخاصتين بالخط الثاني. و إذا لم نقم بهذا العمل. فنحن في الواقع لن نتمكّن من تشغيل البرنامج لأن النقاط ليست جاهزة للاستخدام و لن نتمكّن في الواقع من استخدام x و y لأي نقطة. لأنه بكل بساطة النقاط ليست موجودة و لم يتم حجز الذاكرة المناسبة لها بعد. راجع الدرس الثالث عشر لمزيد من المعلومات حول هذه النقطة.


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





لننظر للشكل التالي:




هنا نجد الأسطر من 15 إلى 19. و في السطر 15 نجد تعليقاً يخبرنا أننا سنقوم بإعطاء قيماً للخط المستقيم line1 . و هذا يعني أننا سنحدد النقاط التي يصل بينهما. و بتفسير أكثر سنقوم بتحديد الاحداثيات السينية و الصادية لكلتا النقطتين. نلاحظ أننا استخدمنا الـ dot notation هنا و هذا يعني انني سأقوم باستخدام صفة (في حالتنا) خاصة بالعضو الذي ينتمي للفئة Line. لننظر لدفتر الرسم البياني و نحاول رسم هذا الخط الذي يربط بين النقطتين (10,10) و (20،20).




هل الخط المستقيم الأول واضح الآن؟ أرجو ذلك :-)





والآن لننظر للشكل التالي:




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




أرجو أن يكون هذا الجزء واضحاً تماماً بالنسبة لكم.






والآن لنتابع الجزء الأخير:




الأسطر من 27 إلى 37 تقوم بطباعة السطر بشكل متب كما في أي سطر طباعة آخر. تطبعه على الشاشة.


كل ما في الأمر أننا قمنا بترتيب المخرجات.










نقطة توقّف..

استخدام اشارة (+) في داخل جملة الطباعة لا تعني أننا سنقوم بالجمع. إلا في حالو واحدة وهي أنه وُجد على طرفي هذه الإشارة داخل أمر الطباعة عددين قابلين للجمع. و حتى هذا ليس الحال دائماً. لأنه يعتمد في بعض الأحيان على ترتيب المتغيرات و موقعها في جملة الطباعة نفسها.

علامة الجمع بين المتغيرات من نوع String و هي التي تمثلها العبارات المحصورة بين علامتي التنصيص " و "، يعني أنه سيتم جمع هذه العبارات. و هذا ما تفعله جملة أو أمر الطباعة System.out.println.





التشغيل:

إنّك إذا قمت بكتابة جميع البرامج بشكل صحيح، فإنّك بعد عمل الترجمة  Compile للملفات الثلاثة، و تشغيل الملف الأخير Painter، فإنه سيظهر لك هذا الناتج:







الخاتمة:

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


ملاحظة برنامجنا حتى الآن لا يقوم بالرسم.. و لكنه سيفعل ان شاء الله :-) كل ما هنالك أننا نبنيه جزءاً جزءاً. فالصبر يا إخوان.

درس (15) صفة في فئة عبارة عن عضو من فئة أخرى

أضف هذه المادة في موقعك:
مواد مشابهة:
 لكل مبتدئ في الجافا- لكل مبتدئ في الجافا-
لكل مبتدئ في الجافا-
(مرات المشاهدة: 1,282 مرات)
مقدمة عن لغة الجـافـا وبيئة التشغيل |[( الجزء الثاني )]| مقدمة عن لغة الجـافـا وبيئة التشغيل |[( الجزء الثاني )]|
مقدمة عن لغة الجـافـا وبيئة التشغيل |[( الجزء الثاني )]|
(مرات المشاهدة: 666 مرات)
(14) استخدام عضو من فئة (14) استخدام عضو من فئة
(14) استخدام عضو من فئة
(مرات المشاهدة: 347 مرات)
استخدام الهتمل (HTML) بمكونات الـ Swing- استخدام الهتمل (HTML) بمكونات الـ Swing-
استخدام الهتمل (HTML) بمكونات الـ Swing-
(مرات المشاهدة: 591 مرات)
مقدّمة على البرمجة بشكل عام مقدّمة على البرمجة بشكل عام
مقدّمة على البرمجة بشكل عام
(مرات المشاهدة: 575 مرات)
ماهي حزم الجافا؟ ماهي حزم الجافا؟
ماهي حزم الجافا؟
(مرات المشاهدة: 759 مرات)
مدخل إلى البرمجة الشيئية أو الكائنية التوجّه Object Oriented Programming- مدخل إلى البرمجة الشيئية أو الكائنية التوجّه Object Oriented Programming-
مدخل إلى البرمجة الشيئية أو الكائنية التوجّه Object Oriented Programming-
(مرات المشاهدة: 3,735 مرات)
المصفوفة المتناثرة Sparse Matrix- المصفوفة المتناثرة Sparse Matrix-
المصفوفة المتناثرة Sparse Matrix-
(مرات المشاهدة: 321 مرات)
خلف كواليس JOptionPane خلف كواليس JOptionPane
خلف كواليس JOptionPane
(مرات المشاهدة: 726 مرات)
Java Language- Java Language-
Java Language-
(مرات المشاهدة: 864 مرات)
About
جميع الحقوق في هذا الموقع محفوظة وكل المواد على الاقسام ملك لاصحابها :Copyright © All rights reserved