国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

ASP面向對象編程探討及比較

2024-05-04 11:01:46
字體:
來源:轉載
供稿:網友
ASP面向對象編程探討及比較     選擇自 RAINMAN_NET 的 Blog  
關鍵字   ASP面向對象編程探討及比較 
出處    

 ASP是Microsoft于較早期推出的動態網頁編程技術,但其結合ADO對數據庫方便快捷的訪問、結合XML、COM/ActiveX等其它技術 實現服務器多層結構的功能使它在今天還有著頑強的生命力,并且依然有著一定的發展。ASP.Net雖然在架構上完全不同于ASP,但它很多內建對象也是基 于ASP進行擴展的。網上有無數的介紹ASP的文章,卻鮮有介紹ASP面向對象以及與其它語言比較的,這也就是我下決心寫這篇文章的原因。
  因為是早期的版本,ASP只提供了很弱的面向對象的接口。眾所周知,ASP的實現語言分為VBScript和JavaScript/JScript: 在VBScript中有Class關鍵字,可以用來聲明一個自定義類;JavaScript就比較怪,它用一個函數來“聲明”類,然后在該函數里通過 this.prototype定義屬性,this.func定義方法。這里將以VBScript為主進行討論,VBScript的類聲明是這樣的:
  Class name
      statements
  End Class 
  這里statements里可以聲明公有或私有的成員,包括函數、成員和屬性。關于屬性,不得不贊一下微軟的get和set方法,這個在COM中出現 的理念,直到.Net中一直被沿用下來,個人認為對程序員而言,比Java用getProp()、setProp()兩個方法來實現同樣效果要方便直觀得 多。
  相比之下,VBScript中的類與PHP4中的類各有千秋(當然跟最新的PHP5沒法比),VBScript中的類保持了VB的不完全面向對象的 “特性”,它僅僅實現了最基本的構造/析構函數、成員函數、變量、屬性,甚至構造函數不能帶參數。PHP4中則還實現了繼承、函數重載等類的重要性質,也 只有實現了這些,才能稱之為面向對象,才有可能為實現多態提供基礎。但二者均沒有實現類的靜態(static)成員等功能。盡管可以用其它一些變通達到同 樣的功效,但從面向對象的思想出發,這都是不徹底的(由于PHP非常靈活,PHP4中可以通過成員函數的靜態變量來間接實現類的靜態變量;而“::”—— 可以實現類的靜態函數訪問的操作符——在PHP4中沒有嚴格檢查。換句話說,所有的成員函數都可以當成靜態函數訪問,只要你在該函數里不使用成員變量就不 會出錯。VBScript根本沒有實現static,只能用Session或Application來實現)。所以在平常的使用中,你可以使用 VBScript的自定義類來封裝一些操作,但不要指望它像C++ / Java / .Net那樣為你的面向對象思想服務。
  VBScript同樣發揚了VB中默認的參數或變量是引用的好風格。這樣,盡管Script語言中對類型不敏感,但它還能夠達到C/C++里指針/引用同樣的功效,完成很多事情。最基本的,比如說用它定義一個列表(List)的節點類ListNode:
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青浦区| 临漳县| 蕉岭县| 潞城市| 肃宁县| 旌德县| 荆州市| 兴隆县| 钦州市| 宝清县| 罗田县| 枞阳县| 平湖市| 庐江县| 嫩江县| 会东县| 调兵山市| 石阡县| 道孚县| 镇沅| 普洱| 嵩明县| 松滋市| 凤翔县| 聊城市| 舞钢市| 武义县| 萍乡市| 怀安县| 周口市| 天气| 泌阳县| 芜湖县| 桂东县| 农安县| 黎城县| 宁波市| 福鼎市| 额敏县| 柏乡县| 和平区|