最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ECMAScript 面向?qū)ο蠹夹g(shù)

面向?qū)ο笮g(shù)語

對象

ECMA-262 把對象(object)定義為“屬性的無序集合,每個屬性存放一個原始值、對象或函數(shù)”。嚴(yán)格來說,這意味著對象是無特定順序的值的數(shù)組。

盡管 ECMAScript 如此定義對象,但它更通用的定義是基于代碼的名詞(人、地點或事物)的表示。

每個對象都由類定義,可以把類看做對象的配方。類不僅要定義對象的接口(interface)(開發(fā)者訪問的屬性和方法),還要定義對象的內(nèi)部工作(使屬性和方法發(fā)揮作用的代碼)。編譯器和解釋程序都根據(jù)類的說明構(gòu)建對象。

實例

程序使用類創(chuàng)建對象時,生成的對象叫作類的實例(instance)。對類生成的對象的個數(shù)的唯一限制來自于運行代碼的機器的物理內(nèi)存。每個實例的行為相同,但實例處理一組獨立的數(shù)據(jù)。由類創(chuàng)建對象實例的過程叫做實例化(instantiation)。

在前面的章節(jié)我們提到過,ECMAScript 并沒有正式的類。相反,ECMA-262 把對象定義描述為對象的配方。這是 ECMAScript 邏輯上的一種折中方案,因為對象定義實際上是對象自身。即使類并不真正存在,我們也把對象定義叫做類,因為大多數(shù)開發(fā)者對此術(shù)語更熟悉,而且從功能上說,兩者是等價的。

面向?qū)ο笳Z言的要求

一種面向?qū)ο笳Z言需要向開發(fā)者提供四種基本能力:

  1. 封裝 - 把相關(guān)的信息(無論數(shù)據(jù)或方法)存儲在對象中的能力
  2. 聚集 - 把一個對象存儲在另一個對象內(nèi)的能力
  3. 繼承 - 由另一個類(或多個類)得來類的屬性和方法的能力
  4. 多態(tài) - 編寫能以多種方法運行的函數(shù)或方法的能力

ECMAScript 支持這些要求,因此可被是看做面向?qū)ο蟮摹?/p>

對象的構(gòu)成

在 ECMAScript 中,對象由特性(attribute)構(gòu)成,特性可以是原始值,也可以是引用值。如果特性存放的是函數(shù),它將被看作對象的方法(method),否則該特性被看作對象的屬性(property)。

瑞金市| 泽普县| 贵定县| 同江市| 宜阳县| 吴堡县| 天门市| 繁峙县| 永兴县| 满城县| 右玉县| 葵青区| 郯城县| 普兰店市| 闸北区| 宜春市| 溆浦县| 峨边| 苗栗市| 榆中县| 万源市| 孙吴县| 湖州市| 龙陵县| 毕节市| 西乌珠穆沁旗| 堆龙德庆县| 齐齐哈尔市| 金阳县| 南涧| 留坝县| 本溪市| 正阳县| 望都县| 蓬安县| 湘西| 长岭县| 安乡县| 滦南县| 阆中市| 循化|