例如基本形式如下:
function supertype()
function subtype()
//繼承了 supertype
subtype.prototype = new supertype();
var instance1 = new subtype();
instance1.colors.push("black");
alert(instance1.colors); //"red,blue,green,black"
var instance2 = new subtype();
alert(instance2.colors); //"red,blue,green,black"
function supertype()
function subtype()
var instance1 = new subtype();
instance1.colors.push("black");
alert(instance1.colors); //"red,blue,green,black"
var instance2 = new subtype();
alert(instance2.colors); //"red,blue,green"
借助建構函式繼承傳參:
function supertype(name)
function subtype()
var instance = new subtype();
alert(instance.name); //"nicholas";
alert(instance.age); //29
使用原型鏈實現對原型屬性和方法的繼承,而通過借用建構函式來實現對例項屬性的繼承。這樣,既通過在原型上定義方法實現了函式 復用,又能夠保證每個例項都有它自己的屬性。例如:
function supertype(name)
supertype.prototype.sayname = function();
function subtype(name, age)
//繼承方法
subtype.prototype = new supertype();
subtype.prototype.constructor = subtype;
subtype.prototype.sayage = function();
var instance1 = new subtype("nicholas", 29);
instance1.colors.push("black");
alert(instance1.colors); //"red,blue,green,black"
instance1.sayname(); //"nicholas";
instance1.sayage(); //29
var instance2 = new subtype("greg", 27);
alert(instance2.colors); //"red,blue,green"
instance2.sayname(); //"greg";
instance2.sayage(); //27
function object(o)
f.prototype = o;
return new f();
}var person = ;
var anotherperson = object(person);
anotherperson.name = "greg";
anotherperson.friends.push("rob");
var yetanotherperson = object(person);
yetanotherperson.name = "linda";
yetanotherperson.friends.push("barbie");
alert(person.friends); //"shelby,court,van,rob,barbie"
function createanother(original);
return clone; //返回這個物件
}
function supertype(name)
supertype.prototype.sayname = function();
function subtype(name, age)
subtype.prototype = new supertype(); //第一次呼叫 supertype()
subtype.prototype.constructor = subtype;
subtype.prototype.sayage = function();
JS中的繼承,重點 聖杯模式
1.原型鏈的繼承 grand.prototype.lastname ji function grand var grand new grand father.prototype grand function father var father new father son.prototype fat...
java 繼承 重寫
package inheritance.override 1 先開闢空間 2 再呼叫構造器 父類宣告賦值 父類構造器 子類宣告賦值 子類構造器 3 返回位址 屬性 就近原則 父類中的方法 如果重寫 找重寫,沒有重寫 找父類 新增不可見 先編譯後執行 編譯 從 所屬的當前類中向上找object 就近最...
繼承 重寫 super
繼承 extends,子類自動擁有父類的所有可繼承的屬性和方法。只支援單繼承,不可多重繼承,如 extends a,b 是錯誤的。可以多層繼承。重寫 子類重寫父類的方法時,不能使用比父類中被重寫的方法更嚴格的訪問許可權。super 1 呼叫父類成員變數 成員方法 super.成員變數 super.成...