Hybrid Method for class inheritance : Inheritance « Object Oriented « JavaScript Tutorial






In the SubClass constructor, object masquerading is used to inherit the color property from BaseClass.

Then prototype chaining is used to inherit the methods of BaseClass.

function BaseClass(sColor) {
    this.color = sColor;
}

BaseClass.prototype.sayColor = function () {
    alert(this.color);
};

function SubClass(sColor, sName) {

    BaseClass.call(this, sColor);
    this.name = sName;
}

SubClass.prototype = new BaseClass();

SubClass.prototype.sayName = function () {
    alert(this.name);
};

var objA = new BaseClass("red");
var objB = new SubClass("blue", "MyName");
objA.sayColor();
objB.sayColor();
objB.sayName();








25.9.Inheritance
25.9.1.Inheritance
25.9.2.Adding new properties and methods to the child class
25.9.3.The Call() Method
25.9.4.Using 'call method' to call the constructor of base class
25.9.5.The Apply() Method
25.9.6.Using 'apply method' to call the constructor of the base class
25.9.7.Prototype Chaining
25.9.8.All new properties and methods of the subclass must come after the assignment of the prototype property
25.9.9.Using apply function to call base constructor
25.9.10.Using call function to call the constructor from base class
25.9.11.Three-level inheritance
25.9.12.Using xbObjects to call the function from base class
25.9.13.Using xbObjects to build three-level inheritance
25.9.14.Hybrid Method for class inheritance
25.9.15.Three level inheritance by using the Hybrid Method
25.9.16.Class Inheritance