国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JavaScript面向?qū)ο缶幊獭嫦驅(qū)ο?

SimonMa / 606人閱讀

摘要:面向?qū)ο竺嫦驅(qū)ο蟮母攀雒嫦驅(qū)ο笫鞘裁疵嫦驅(qū)ο缶幊痰娜Q是,簡(jiǎn)稱。面向?qū)ο缶幊淌怯贸橄蠓绞絼?chuàng)建基于現(xiàn)實(shí)世界模型的一種編程。面向?qū)ο缶幊炭梢钥醋鍪鞘褂靡幌盗袑?duì)象相互協(xié)作的軟件設(shè)計(jì)。面向?qū)ο缶幊痰纳礁柚饕奶卣魇欠庋b繼承多態(tài)。

面向?qū)ο?/b> 面向?qū)ο蟮母攀?/b> 面向?qū)ο笫鞘裁?/b>

面向?qū)ο缶幊痰娜Q是Object Oriented Programming,簡(jiǎn)稱OOP。
面向?qū)ο缶幊淌怯贸橄蠓绞絼?chuàng)建基于現(xiàn)實(shí)世界模型的一種編程。
面向?qū)ο缶幊炭梢钥醋鍪鞘褂靡幌盗袑?duì)象相互協(xié)作的軟件設(shè)計(jì)。面向?qū)ο蟪绦蛟O(shè)計(jì)的目的是在編程中促進(jìn)更好的靈活性和可維護(hù)性。憑借其對(duì)模塊化的重視,面向?qū)ο蟮拇a開發(fā)更簡(jiǎn)單,更加容易理解。
面向?qū)ο缶幊痰纳礁柚饕奶卣魇牵?.封裝;2.繼承;3.多態(tài)。
所有的程序是由一定的屬性和行為對(duì)象組成的,不同的對(duì)象的訪問通過函數(shù)調(diào)用來(lái)完成,對(duì)象間所有的交流都是通過方法調(diào)用,通過對(duì)封裝對(duì)象數(shù)據(jù),提高復(fù)用率。
JavaScript是一種基于原型的面向?qū)ο笳Z(yǔ)言,而不是基于類的。正式由于這一根本的區(qū)別,其如何創(chuàng)建對(duì)象的層級(jí)結(jié)構(gòu)以及對(duì)象的屬性與屬性值是如何繼承的并不是那么清晰。
基于原型語(yǔ)言(如JavaScript)并不存在這種區(qū)別:它只有對(duì)象。基于原型的語(yǔ)言具有所謂原型對(duì)象(prototypical object)的概念。原型對(duì)象可以作為一個(gè)模板,新對(duì)象可以從中獲得原始的屬性。任何對(duì)象都可以指定其自身的屬性,既可以是創(chuàng)建時(shí)也可以在運(yùn)行時(shí)創(chuàng)建。而且,任何對(duì)象都可以作為另一個(gè)對(duì)象的原型(prototype),從而允許后者共享前者的屬性。

封裝

所謂封裝就是按照要求使用并得到對(duì)應(yīng)的結(jié)果,而不需要知道其真實(shí)的執(zhí)行原理是怎么樣的。
封裝主要用于闡述對(duì)象中所包含(或封裝)的內(nèi)容,他們通常由兩部分組成:
1.相關(guān)數(shù)據(jù)(用于存儲(chǔ)屬性)
2.基于這些數(shù)據(jù)所能做的事情

繼承

繼承通過是指類與類之間的關(guān)系。如果兩給類都有相同的屬性或方法,那么可以讓一個(gè)類繼承于另一個(gè)類,這樣就不需要再前者再次定義同樣的屬性或方法。
創(chuàng)建一個(gè)或多個(gè)類的專門版本類方式稱為繼承(JavaScript只支持單繼承)。創(chuàng)建的專門版本的類通常叫做子類,另外的類通常叫做父類。
在JavaScript中,繼承通過賦予子類一個(gè)父類的實(shí)例并專門化子類來(lái)實(shí)現(xiàn)。

多態(tài)

不同的對(duì)象可以定義具有相同名稱的方法,方法是作用于所在的對(duì)象中。這種不同對(duì)象通過相同方法的調(diào)用實(shí)現(xiàn)各自行為的能力,被稱之為多態(tài)。
例如A對(duì)象具有sayMe()方法,B對(duì)象繼承于A對(duì)象,那么B對(duì)象中也具有sayMe(),當(dāng)調(diào)用sayMe()方法時(shí),并不知道該方法時(shí)A對(duì)象還是B對(duì)象。但這并不影響代碼的真誠(chéng)噶很難過工作。

構(gòu)造函數(shù) 構(gòu)造函數(shù)

構(gòu)造函數(shù)又稱為構(gòu)造器或?qū)ο竽0澹菍?duì)象中的一個(gè)方法,在實(shí)例化時(shí)構(gòu)造器被調(diào)用。在JavaScript中函數(shù)就可以作為構(gòu)造器使用,因此不需要特別地定義一個(gè)構(gòu)造器方法。

   創(chuàng)建構(gòu)造函數(shù)(類的概念) - 用于創(chuàng)建對(duì)象(屬性和方法)
    function 構(gòu)造函數(shù)名稱(){
        this.屬性名 = 屬性值;
        this.方法名 = function(){
            方法體
        }
    }
     this關(guān)鍵字 -> 指代利用當(dāng)前構(gòu)造函數(shù)創(chuàng)建的對(duì)象
 
function Hero(name){
    this.name = name;
    this.sayMe = function(){
        console.log("我是" + name);
    }
}
// 利用構(gòu)造函數(shù)創(chuàng)建對(duì)象
var hero = new Hero("張無(wú)忌");
console.log(hero);

var obj = {
    name : "張無(wú)忌",
    sayMe : function(){
        console.log("我是張無(wú)忌");
    }
}

注意;
1.這里的Person()并不是作為函數(shù),而是構(gòu)造函數(shù)。
2.創(chuàng)建person對(duì)象需要使用new關(guān)鍵字。

構(gòu)造函數(shù)的屬性

0構(gòu)造函數(shù)的屬性實(shí)際上就是對(duì)象的變量。一個(gè)對(duì)象可以包含多個(gè)屬性,定義構(gòu)造函數(shù)的屬性時(shí)使用this關(guān)鍵字。

// 1.函數(shù);2.構(gòu)造函數(shù)
function Hero(name){
    var v = 100;// 局部變量
    function n(){}// 內(nèi)部函數(shù)
    this.name = name;// 屬性
    this.sayMe = function(){// 屬性
        console.log("我是"+name);
    }
}
// 1.函數(shù)調(diào)用
Hero();
// 2.構(gòu)造函數(shù)使用
var hero = new Hero();

function fun(){
    var v = 100;// 局部變量
    // 方法
    this.get = function(){
        return v;
    }
    this.set = function(value){
        v = value;
    }
}
// 構(gòu)造函數(shù)
var f = new fun();
console.log(f);

console.log(f.get());
f.set(200);
console.log(f.get());
構(gòu)造函數(shù)的方法

構(gòu)造函數(shù)的方法很想構(gòu)造函數(shù)的屬性,不同的方法是一個(gè)函數(shù)(或者象函數(shù)一樣被定義)。
定義構(gòu)造函數(shù)的方法是使用this關(guān)鍵字。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/108156.html

相關(guān)文章

  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來(lái)。注意中,對(duì)象一定是通過類的實(shí)例化來(lái)的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    李昌杰 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來(lái)。注意中,對(duì)象一定是通過類的實(shí)例化來(lái)的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    Lyux 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來(lái)。注意中,對(duì)象一定是通過類的實(shí)例化來(lái)的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    AaronYuan 評(píng)論0 收藏0
  • 再和“面向對(duì)象”談戀愛 - 面向對(duì)象編程概念(三)

    摘要:說到底面向?qū)ο蟛攀浅绦蛘Z(yǔ)言的根本。其實(shí)面向?qū)ο缶幊陶f的就是自定義對(duì)象。里并沒有類的概念,所以嚴(yán)格上來(lái)講這是個(gè)假的面向?qū)ο罄锏拿嫦驅(qū)ο缶幊态F(xiàn)在好了,終于聽到別人鄙視我們了,給我們提供了類這個(gè)概念,其實(shí)是向傳統(tǒng)語(yǔ)言更靠齊了。 通過前兩篇文章,我們了解了對(duì)象的概念以及面向?qū)ο罄锏南嚓P(guān)概念等知識(shí),那前面說了對(duì)象分類里的前兩種,這篇文章要詳細(xì)去說第三種自定義對(duì)象,那真正的好戲這就來(lái)了! 面向?qū)ο?..

    Cruise_Chan 評(píng)論0 收藏0
  • Javascript面向對(duì)象編程

    摘要:如果要理解基于原型實(shí)現(xiàn)面向?qū)ο蟮乃枷耄敲蠢斫庵械萌齻€(gè)重要概念構(gòu)造函數(shù)原型原型鏈對(duì)幫助理解基于原型的面向?qū)ο笏枷刖惋@得尤為重要。函數(shù)對(duì)象的原型在中,函數(shù)是一種特殊的對(duì)象,所有的函數(shù)都是構(gòu)造函數(shù)的實(shí)例。 介紹 和java這種基于類(class-base)的面向?qū)ο蟮木幊陶Z(yǔ)言不同,javascript沒有類這樣的概念,但是javascript也是面向?qū)ο蟮恼Z(yǔ)言,這種面向?qū)ο蟮姆绞匠蔀?基...

    wanglu1209 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<