麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > JS > 正文

淺談JavaScript中面向對象技術的模擬

2024-09-06 12:44:50
字體:
來源:轉載
供稿:網(wǎng)友
一、引言
  在C#和Java語言中,面向對象是以類的方式實現(xiàn)的,特別是繼承這個特性,類的方式繼承表現(xiàn)出了強大的功能,而且也易于學習。JavaScript不是純的面向對象的語言,而是基于對象的語言,對象的繼承是以原型函數(shù)的形式繼承的,很多初學者剛開始接觸的時候不太理解,但是JavaScript這種以原型函數(shù)的形式實現(xiàn)面向對象技術,不僅是可行的,而且還為面向對象技術提供了動態(tài)繼承的功能,本文主要討論了JavaScript的面向對象技術。
二、原型對象概述
  每個JavaScript對象都有原型對象,對象都繼承原型對象的所有屬性。一個對象的原型是由創(chuàng)建該對象的構造函數(shù)定義的。JavaScript的所有函數(shù)都有一個名為prototype的屬性,該屬性引用了原型對象,該原型對象初始化的時候只有constructor屬性來引用創(chuàng)建該原型對象的對象。JavaScript沒有Class定義類的概念,構造函數(shù)就定義了類,并初始化類中的屬性,每個類的成員都會從原型對象中繼承相同的屬性,也就是說,原型對象提供了類的實例共享的屬性和方法,這就節(jié)約了內(nèi)存。
  當讀取一個對象的屬性的時候,JavaScript會先從對象中查找,如果沒有查找到,才會到原型對象中查找該屬性(或方法),所以,尤其是對于方法,最好保存到原型對象中以便于共享,并且達到節(jié)省內(nèi)存的目的,而且原型對象還有一個強大的功能,那就是如果通過構造函數(shù)實例化一些對象后,再給構造函數(shù)的原型對象增加屬性和方法,那么它原來實例化的對象實例將會繼承這些增加的屬性和方法。
三、對象屬性、對象方法、類屬性、類方法
  每個對象都會有自己單獨的實例屬性和實例方法的副本,如果實例化5個對象,那么就會有5個對象的實例屬性和實例方法副本。This關鍵字引用它們的實例對象,也就是說,誰操作了實例方法,this就引用誰;訪問了哪個實例對象的屬性,this就引用這個實例對象。
  類方法和類屬性只有一個副本,類方法調(diào)用的時候必須引用類的名字,例如:Date.setHours();
  下面用一個程序來表現(xiàn)實例屬性、實例方法、類屬性、類方法
代碼如下:
 function Mobile(kind,brand) {
      this.kind=kind;//定義手機的種類,例如GSM/CDMA
      this.brand=brand;//定義手機的品牌,this關鍵字表示用該構造函數(shù)實例化之后的對象
  }
  
  /**//*
   定義類的第二步是在構造函數(shù)的原型對象中定義它的實例方法或其他屬性
   該對象定義的任何屬性都將這個類的所有實例繼承。
   
   */
   //撥號,這里只是返回電話號碼
  Mobile.prototype.dial = function(phoneNo) {
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久久久久久久久一本门道91 | 中文字幕在线观看精品 | 中国a级黄色片 | 视频一区二区精品 | 欧美成人性生活 | 欧产日产国产精品v | 91精品国产综合久久久动漫日韩 | 久久精品小短片 | vidz 98hd| 欧美特黄一级高清免费的香蕉 | 欧美一级免费在线观看 | 欧美精品久久久久久久久久 | 欧美日韩免费一区 | 蜜桃传免费看片www 一本色道精品久久一区二区三区 | av国语| 草逼一区 | 美女擦逼| 中国嫩模一级毛片 | 日韩字幕在线观看 | 美女污污在线观看 | 天天干干 | 国产在线精品区 | 精品一区二区三区免费看 | 黄色高清视频网站 | 国产成人精品一区在线播放 | 黄色淫片 | 激情宗合网 | 91在线视频网址 | 亚洲成人网一区 | 久久激情小视频 | 日本一区视频在线观看 | 狠狠操人人干 | 一本大道av| 免费国产不卡午夜福在线 | 久久精品视频1 | 免看黄大片aa| 久久久久久久久久久久久久国产 | 久久久久九九九女人毛片 | 久久久三级免费电影 | 九九热精品在线视频 | 亚洲视频在线网 |