{ return this.number*3;}
Тексереміз:
var t = new Num(10);
alert("Для родителя: 10*3=" +t.mul3());
Мұрагердің өз тегінің жаңа тәсілін қалай түсінетінін тексерейік, ол үшін былай жазайық:
var k = new Numa(10);
alert(k.mul3());
Браузер қате жайлы хабарлама береді.
Мұндай мұралау статикалық деп аталады. Мұрагер жасалу кезінде оның ішкі құрамына тегінің барлық қасиеттері мен тәсілдері көшіріледі де, содан кейін туыстық байланыс жойылады. Егер оның ата тегі жаңа тәсілге ие болатын болса, оның мұрагері ол туралы ешнәрсе білмейді.
Мұрагер жасау кезінде оның ата тегімен байланысын үзбеуге болады. Ол динамикалық мұралау арқылы іске асырылады. Егер объект мұралау тәсілімен жасалса, онда ата тегінің құжаты (документациясы) көшірілмейді, тек оған сілтеме жасалады. Егер ата тегінде бір өзгеріс болса, онда ол барлық «динамикалық» түрде құрылған мұрагерлерге ол қатысты болып саналады.
|
|
Динамикалық мұралауы бар объектіге мысал:
//Объект Numa (динамически наследован от Num)
Function Numa(a)
{ this.parent = Num;
// родителем объявлен Num
this.parent(a);
// вызван конструктор родителя
this.put = _put;
// объявлен новый тәсіл у потомка
}
Numa.prototype = new Num;
//Задана динамическая связь с родителем