Lecture 4 java lab

Page 1

‫برمجة جافا‬CS602 & GS311 Java Programming I ‫(عملي‬LAB) ‫اعداد‬ ‫ حليمة محمد عطية‬.‫أ‬ 2017 ‫خريف‬ 4 ‫محاضرة‬ FB : Ms H Programmer www.msjavaprogrammer.strikingly.com


‫الوراثة ‪inheritance‬‬ ‫• هً عملٌة إنشاء ‪ class‬جدٌدة تأخذ خصائص ‪ class‬موجودة‬ ‫مسبقا ً (وراثة) و تضٌف خصائص أخرى لها حسب الحاجة‪.‬‬ ‫• تسمى ‪ class‬الموجودة مسبقا ً (القدٌمة) ب‪ ،superclass‬أما‬ ‫ال ‪class‬الجدٌدة ف ُتسمى ب‪.subclass‬‬ ‫• كل ‪ class‬جدٌدة (‪ )subclass‬ترث من ال‪ class‬القدٌمة‬ ‫(‪ )superclass‬كل خصائصها (بٌاناتها) و سلوكها (دوالها)‪.‬‬ ‫• فً لغة جافا‪ ،‬كل ‪ subclass‬جدٌدة ترث من ‪ superclass‬قدٌمة‬ ‫واحدة فقط‪ .‬و لٌس كما فً لغة ‪ C++‬التً تتمٌز بالوراثة‬ ‫المتعددة‪.‬‬ ‫• فً الغالب‪ٌ subclass ،‬كون اكبر حجما ً من ‪ ،superclass‬لكن‬ ‫ل‪ superclass‬كائنات أكثر‪.‬‬


: . . .

class

: )optional

(

Access modifier { ………………….. }

class

:superclass subclass extends subclass

class

.1 .2 .3

class-name extends

: superclass

class-name


‫الوراثة ‪inheritance‬‬ ‫• ثانٌا ً‪ :‬استخدام الكلمة المحجوزة معدل الوصول ‪protected‬‬ ‫مع المتغٌرات و الثوابت الموجودة فً ‪ superclass‬لكً‬ ‫تسمح لكل ‪ subclass‬منها بالوصول الٌها‪.‬‬ ‫• ثالثا ً‪ :‬استخدام الكلمة المحجوزة ( )‪ super‬الستدعاء دالة‬ ‫بناء موجودة فً ال‪ superclass‬من قبل دالة بناء موجودة‬ ‫فً ‪ subclass‬و امكانٌة تمرٌر قٌم (بٌانات) إلٌها‪ ،‬كما ٌمكن‬ ‫أن ُتستخدم ال‪ super‬للتمٌز بٌن متغٌرات ‪ superclass‬و‬ ‫‪subclass‬المتشابهة‪.‬‬


‫مالحظات‪:‬‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬ ‫•‬

‫كل ‪ object‬من ‪ subclass‬هو ‪ object‬من ‪.superclass‬‬ ‫ٌمكن أن ٌكون ل‪ superclass‬أكثر من ‪ ،subclass‬و لكن لٌس‬ ‫العكس‪.‬‬ ‫ٌمكن تمثٌل العالقة بٌن ال‪ superclass‬و ‪ subclass‬ب ‪is‬‬ ‫‪.relationship‬‬ ‫كل ‪ٌ class‬مكن أن ترث من ال‪ class‬التً تسبقها (التسلسل‬ ‫الهرمً)‪.‬‬ ‫تعتبر ال‪ object class‬هً ال‪ class‬االم الرئٌسٌة الموجودة فً‬ ‫مكتبة جافا (‪ )superclass‬ألي ‪ class‬فً البرنامج فً حالة‬ ‫عدم تحدٌد ‪ .superclass‬و أي ‪ class‬فً برنامج جافا ترث‬ ‫ضمنٌا ً من ‪ object class‬الرئٌسٌة ‪.‬‬


:‫مالحظات‬ object class toString() :

printf public String toString() { return String.format(“ } :

Object-name.toString();

.

“,

); toString()

.1


overriding methods ‫الدوال الزائدة‬ subclass superclass ) superclass ( subclass ( subclass ) .overriding methods .) subclass superclass super . subclass .overriding methods overriding : overriding ) ( Super.method-name ( parameters ) ;

(   


‫سؤال المحاضرة‪:‬‬ ‫• شركة بها نوعان من الموظفٌن‪ ،‬موظف عمولة حٌث‬ ‫ٌتقاضى مبلغ من المال (عمولة) مقابل تسوٌق منتج الشركة‪،‬‬ ‫و موظف مرتب و عمولة حٌث ٌتقاضى مرتب من الشركة‬ ‫مع مبلغ من المال (عمولة) مقابل تسوٌق منتج الشركة أٌضا ً‪.‬‬ ‫اكتب برنامج بلغة جافا مستخدما ً ( & ‪inheritance‬‬ ‫‪ٌ )overriding method‬قوم بالتالً‪:‬‬ ‫• عرض بٌانات كل موظف‪.‬‬ ‫• حساب و عرض اجمالً ما ٌتقاضاه كل موظف اذا علمت ان‬ ‫نسبة العمولة هً ‪.0.1‬‬


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.