人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

JavaScript學(xué)習(xí):基礎(chǔ)繼承機制

JavaScript學(xué)習(xí):基礎(chǔ)繼承機制

更新時間:2019-05-11 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

  最近因為學(xué)校做網(wǎng)站設(shè)計,所以一直在ASP上和數(shù)據(jù)庫上大費苦心。
  
  我在前一個階段是做Java程序設(shè)計的。突然接到任務(wù)并學(xué)習(xí)ASP,所以我一直都熱忠并善于利用JavaScript來構(gòu)架ASP程序。
  
  JavaScript的一個明顯的優(yōu)點就在于它可以定義和持有自己的對象。這一點好象是VBScript所無法比擬的。
  有了這一點,可以利用JavaScript進行更接近于面向?qū)ο蟮某绦蛟O(shè)計。也許這將使網(wǎng)站開發(fā)更有樂趣...
  
  但有個嚴重的缺點!JavaScript不支持繼承機制。不象Java那樣,支持extends關(guān)鍵字(雖然這個關(guān)鍵字在JavaScript中是保留字)。
  
  在微軟的ASP.NET中,JavaScript才開始提供比較完善的支持。PHP語言當(dāng)然也有繼承機制的支持,這些都叫我垂青...
  
  不過現(xiàn)在我根本無法說服學(xué)校的老頭子們買更好的域名空間,但是我也不想忍受ASP中無繼承機制之苦,所以急中生智,也就有了一些成果!
  
  JavaScript根本不支持繼承機制!這是肯定的。但是我們可以想辦法做些手腳,模擬一個出來。
廢話說了一堆,先來看一個例子:

  function Person()
  {
  public: // 注意這個public! 其實沒有這樣的用法, 這只是我的習(xí)慣. 幸好在實際應(yīng)用中不會有錯
  this.GetName=Person_mfGetName;

  private: // 和public一樣, 這也是我的習(xí)慣
  this.m_strName="Guest";
  }
  function Person_mfGetName()
  {
  return this.m_strName;
  }

  var MyPerson=new Person();
  MyPerson.GetName();

  你可以用任何輸出語句來查看結(jié)果。當(dāng)然這只是第一步!
  下面是關(guān)鍵一步:繼承!

  function Student() // Extends Class: Person
  {
  EXTENDS: // 我的習(xí)慣, 但要切記不能使用小寫字母. 因為extends是JavaScript中的保留字
  this.Super=Person; // 定義指向其"父類構(gòu)造器". 這里的Super也不能用小寫形式
  this.Super(); // 調(diào)用其"父類構(gòu)造器". 這樣就可以從"父類"那里"繼承"所有的屬性和方法

  private:
  this.m_nStudentID=0;
  }

  雖然在Student中并沒有看到GetName()方法,但是卻可以調(diào)用。因為他已經(jīng)繼承了Person的GetName()方法。

  var MyStudent=new Student();
  MyStudent.GetName(); // 注意, 調(diào)用的是其"父類"的GetName方法, 結(jié)果為返回 "Guest".


  關(guān)于JavaScript繼承實現(xiàn)就是這樣。只要牢記兩步:
  
  1: 在"子類"中先定義一個指向"父類"的函數(shù)(什么名字都可以,我習(xí)慣使用Super)
  2: 隨后調(diào)用這個函數(shù)
  
  這樣就可以繼承"父類"的所有屬性和方法!
  
  我現(xiàn)在有些懷疑的是,既然extends和super都是保留字,那為什么JavaScript卻不支持繼承呢?
  不知道有沒有其他更好的辦法?希望各位指點...

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 建阳市| 喜德县| 齐齐哈尔市| 马公市| 铁力市| 句容市| 鄂伦春自治旗| 阳春市| 东源县| 盖州市| 广汉市| 徐汇区| 襄城县| 安庆市| 犍为县| 延庆县| 丰城市| 韶关市| 高清| 法库县| 涿鹿县| 鸡泽县| 敦化市| 小金县| 都匀市| 怀集县| 石河子市| 深泽县| 祥云县| 三江| 叙永县| 许昌县| 濉溪县| 通化市| 黎城县| 黑水县| 满洲里市| 寿阳县| 长葛市| 昌图县| 涪陵区|