新聞中心
面象對(duì)象編程技術(shù)的核心理念:封裝、繼承、多態(tài);在一些主流的高級(jí)編程語言中,比 如:C#,VB.NET,JAVA,PHP等都是很容易實(shí)現(xiàn)的,而如果要在javascript中實(shí)現(xiàn)面象對(duì)象編程,可就不那么直接和容易了,因?yàn)?javascript并不是面向?qū)ο蟮恼Z言,所以我們只能通過javascript的一些特性,比如:閉包、原型鏈等來模擬出面向?qū)ο缶幊蹋艺J(rèn)為這些是 作為熟練掌握與靈活運(yùn)用javascript的基礎(chǔ),園子里已有很多的javascript高手對(duì)于這方面都有介紹與分析,而我僅以作為一個(gè)項(xiàng)目負(fù)責(zé)人 (獨(dú)立設(shè)計(jì)與開發(fā)WEB前端與后端)的視角來重新理解javascript面向?qū)ο笠c(diǎn)。

目前創(chuàng)新互聯(lián)建站已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、新和網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
既然是面向?qū)ο?,首先我們要知道如何?chuàng)建一個(gè)對(duì)象,以下列出了創(chuàng)建對(duì)象的幾種常見方法:
A.直接創(chuàng)建一個(gè)對(duì)象實(shí)例:
優(yōu)點(diǎn):直接創(chuàng)建一個(gè)對(duì)象,無需提前定義類型;
缺點(diǎn):無法實(shí)現(xiàn)復(fù)用;
B.先定義后實(shí)例化對(duì)象:
優(yōu)點(diǎn):類似面向?qū)ο缶幊陶Z言的構(gòu)造函數(shù),容易理解,且定義后可通過new關(guān)鍵字實(shí)例化多個(gè)對(duì)象,實(shí)現(xiàn)復(fù)用。
缺點(diǎn):需先定義后才能實(shí)例化;
綜上所述,建議采用B方法來創(chuàng)建對(duì)象。
實(shí)現(xiàn)封裝,即只暴露公共方法與公共屬性,隱藏實(shí)現(xiàn)細(xì)節(jié)(私有方法、屬性)
利用原型鏈實(shí)現(xiàn)繼承,即一個(gè)對(duì)象包含另一個(gè)對(duì)象的所有公共屬性與方法,實(shí)現(xiàn)繼承的方法有很多,我覺得采用如下形式來模擬繼承更符合面向?qū)ο蟮乃季S:
利用原型鏈實(shí)現(xiàn)多態(tài),即基于同一個(gè)方法簽名在不同的子類中表現(xiàn)的形式不同:
本文標(biāo)題:javascript必知必會(huì):面象對(duì)象編程
文章來源:http://www.dlmjj.cn/article/dpseoei.html


咨詢
建站咨詢
