February 13, 2001 - Inheriting and Overriding Methods
February 13, 2001 Inheriting and Overriding Methods Tips: February 2001
Yehuda Shiran, Ph.D.
|
function superClass() {
this.bye = superBye;
this.hello = superHello;
function superHello() {
return "Hello from superClass";
}
function superBye() {
return "Bye from superClass";
}
}
function subClass() {
this.inheritFrom = superClass;
this.inheritFrom();
this.bye = subBye;
function subBye() {
return "Bye from subClass";
}
}
var newClass = new subClass();
alert(newClass.bye());
alert(newClass.hello());
We have a super class , superClass
, and a sub class, subClass
. superClass
defines two methods: bye()
and hello()
. subClass
inherits these two methods by:
this.inheritFrom = superClass;
this.inheritFrom();
and overrides the bye()
method. When clicking here, you trigger the evaluation of bye()
and hello()
from the sub class. You can judge from the alert boxes that indeed the hello()
method is as defined by the super class, while the bye method is as overridden by the sub class.