[基础]Javascript中的继承示例代码
生活随笔
收集整理的這篇文章主要介紹了
[基础]Javascript中的继承示例代码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
面向對象的語言必須具備四個基本特征:
1.封裝能力(即允許將基本數據類型的變量或函數放到一個類里,形成類的成員或方法)
2.聚合能力(即允許類里面再包含類,這樣可以應付足夠復雜的設計)
3.支持繼承(父類可以派生出子類,子類擁有父母的屬性或方法)
4.支持多態(允許同樣的方法名,根據方法簽名[即函數的參數]不同,有各自獨立的處理方法)
這四個基本屬性,javascript都可以支持,所以javascript確實是一種弱類型的面向對象的語言,這里給出一個簡單的類繼承的代碼
<script?type="text/javascript">
//父類ClassA
function?ClassA(sColor)?{
????this.color?=?sColor;
????this.sayColor?=?function?()?{
????????document.write("Color:"?+?this.color?+?"<br/>");
????};
}
//子類ClassB,繼承自ClassA
function?ClassB(sColor,sName){????
????ClassA.call(this,sColor);//利用call函數,將ClassA的所有方法都賦給ClassB,即實現了繼承
????this.name?=?sName;
????this.sayName?=?function(){
????????document.write("Name:"?+?this.name?+?"<br/>");
????}
}
var?oClassA?=?new?ClassA("Red");
oClassA.sayColor();
var?oClassB?=?new?ClassB("Blue","Jimmy.Yang");
oClassB.sayColor();//這里sayColor方法是從ClassA繼承來的
oClassB.sayName();//這是ClassB中的新方法
/**//*
call函數的演示示例
function?sayColor(sPrefix,?sSuffix)?{
alert(sPrefix?+?this.color?+?sSuffix);
};
var?obj?=?new?Object();
sayColor.call(obj,?"The?color?is?",?",?a?very?nice?color?indeed.?");
*/
</script>
1.封裝能力(即允許將基本數據類型的變量或函數放到一個類里,形成類的成員或方法)
2.聚合能力(即允許類里面再包含類,這樣可以應付足夠復雜的設計)
3.支持繼承(父類可以派生出子類,子類擁有父母的屬性或方法)
4.支持多態(允許同樣的方法名,根據方法簽名[即函數的參數]不同,有各自獨立的處理方法)
這四個基本屬性,javascript都可以支持,所以javascript確實是一種弱類型的面向對象的語言,這里給出一個簡單的類繼承的代碼
<script?type="text/javascript">
//父類ClassA
function?ClassA(sColor)?{
????this.color?=?sColor;
????this.sayColor?=?function?()?{
????????document.write("Color:"?+?this.color?+?"<br/>");
????};
}
//子類ClassB,繼承自ClassA
function?ClassB(sColor,sName){????
????ClassA.call(this,sColor);//利用call函數,將ClassA的所有方法都賦給ClassB,即實現了繼承
????this.name?=?sName;
????this.sayName?=?function(){
????????document.write("Name:"?+?this.name?+?"<br/>");
????}
}
var?oClassA?=?new?ClassA("Red");
oClassA.sayColor();
var?oClassB?=?new?ClassB("Blue","Jimmy.Yang");
oClassB.sayColor();//這里sayColor方法是從ClassA繼承來的
oClassB.sayName();//這是ClassB中的新方法
/**//*
call函數的演示示例
function?sayColor(sPrefix,?sSuffix)?{
alert(sPrefix?+?this.color?+?sSuffix);
};
var?obj?=?new?Object();
sayColor.call(obj,?"The?color?is?",?",?a?very?nice?color?indeed.?");
*/
</script>
轉載于:https://www.cnblogs.com/yjmyzz/archive/2008/01/20/1046489.html
總結
以上是生活随笔為你收集整理的[基础]Javascript中的继承示例代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在IE7下使用Fiddler
- 下一篇: java美元兑换,(Java实现) 美元