في هذا الدرس 3تصفّح المواضيع
inheritance وهي طريقة تستخدم في وراثة عناصر class معين بواسطة class اخر واستخدامها دون إعادة كتابتها مره اخري
- نستطيع عمل وراثة inheritance من class الي اخر عن طريق كتابة كلمة extends بين ال parent class وهو الذي يحتوي علي العناصر التي سوف يرثها ال class الاخر وال child class وهو ال class الذي سيقوم بوراثة هذه العناصر
Example
class Car {
constructor(brand) {
this.carname = brand;
}
present() {
return 'I have a ' + this.carname;
}
}
class Model extends Car {
constructor(brand, mod) {
super(brand);
this.model = mod;
}
show() {
return this.present() + ', it is a ' + this.model;
}
}
let myCar = new Model("Ford", "Mustang");
document.getElementById("demo").innerHTML = myCar.show();
- تستخدم الدالة ( )super لتشير الي class الأساسي وهو في المثال السابق " car "
- عن طريق استدعاء الدالة ( )super بداخل دالة ( )constructor نقوم باستدعاء دالة ال constructor الخاصة بال parent class وبهذه الطريقة نستطيع الوصول الي العناصر الخاصة به
تسمح لنا ال classes في استخدام ال setter وال getters علي للدوال الخاصة بك وتعمل بطريقة اكثر فاعلية عندما تقوم بالتعديل علي القيم التي سوف تقوم الدالة بأرجاعها
ونستطيع استخدام ال setter عن طريق كتابة كلمة set واستخدام ال getters عن طريق كتابة كلمة get
Example
class Car {
constructor(brand) {
this.carname = brand;
}
get cnam() {
return this.carname;
}
set cnam(x) {
this.carname = x;
}
}
let myCar = new Car("Ford");
document.getElementById("demo").innerHTML = myCar.cnam;
علي عكس الدوال العادية فأن دوال ال class لا يمكن استدعائها في اسطر تسبق انشائها أي انها لا تدعم ال Hosting
Example
/* You cannot use the class yet. */
/* myCar = new Car("Ford") */
/*This would raise an error. */
class Car {
constructor(brand) {
this.carname = brand;
}
}
/* Now you can use the class: */
let myCar = new Car("Ford")
سجّل الدخول لحفظ تقدمك
تابع إنجاز المواضيع والمصطلحات والمهام، وكمّل من آخر خطوة على أي جهاز.