Javascript簡單實現物件導向編程繼承執行個體代碼_javascript技巧

來源:互聯網
上載者:User

本文講述了Javascript簡單實現物件導向編程繼承執行個體代碼。分享給大家供大家參考,具體如下:

物件導向的語言必須具備四個基本特徵:

1.封裝能力(即允許將基礎資料型別 (Elementary Data Type)的變數或函數放到一個類裡,形成類的成員或方法)
2.彙總能力(即允許類裡面再包含類,這樣可以應付足夠複雜的設計)
3.支援繼承(父類可以派生出子類,子類擁有父母的屬性或方法)
4.支援多態(允許同樣的方法名,根據方法簽名[即函數的參數]不同,有各自獨立的處理方法)

這四個基本屬性,javascript都可以支援,所以javascript確實是一種弱類型的物件導向的語言,這裡給出一個簡單的類繼承的代碼

<script type="text/javascript">//父類ClassAfunction ClassA(sColor) {  this.color = sColor;  this.sayColor = function () {    document.write("Color:" + this.color + "<br/>");  };}//子類ClassB,繼承自ClassAfunction 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>

希望本文所述對大家JavaScript程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.