首頁 web前端 js教程 JavaScript 中 OOP 的四大支柱

JavaScript 中 OOP 的四大支柱

Jul 27, 2024 pm 07:28 PM

The Four Pillars of OOP in JavaScript

JavaScript 中 OOP 的四大支柱

JavaScript 中的物件導向程式設計 (OOP) 建立在四個主要想法或「支柱」之上。它們是封裝、抽象、繼承和多態。讓我們用簡單的例子來分解每一個。

封裝

封裝意味著將資料和處理該資料的函數放在一個地方,就像一個類別。

例:汽車

想像一輛汽車。它具有模型、顏色、速度和引擎等屬性。它還具有啟動和停止等功能。我們將所有這些變數和方法放入一個名為 Car 的類別中。

class Car {
    constructor(model, color, speed, engine) {
        this.model = model;
        this.color = color;
        this.speed = speed;
        this.engine = engine;
    }

    start() {
        console.log("Car started");
    }

    stop() {
        console.log("Car stopped");
    }
}
登入後複製

抽象

抽象表示隱藏複雜的細節並僅顯示必要的部分。

範例:遠端控制

想想電視遙控器。您按“下​​一步”按鈕更改頻道。您不需要知道遙控器如何向電視發送訊號;您只需使用按鈕即可更改頻道。

在 JavaScript 中,抽像是指使用簡單的介面與更複雜的程式碼互動。

class Remote {
    changeChannel() {
        console.log("Channel changed");
    }
}

let remote = new Remote();
remote.changeChannel(); // You don't need to know how this works inside
登入後複製

遺產

繼承是指一個類別可以繼承另一個類別的屬性和方法。

例:家庭特徵

就像您可能從父母那裡繼承某些行為或特徵一樣,一個類別可以從另一個類別繼承屬性和方法。當我們從多個類別繼承時,稱為多重繼承,但 JavaScript 並不直接支援這種方式。

class Animal {
    makeSound() {
        console.log("Animal sound");
    }
}

class Dog extends Animal {
    bark() {
        console.log("Dog barks");
    }
}

let dog = new Dog();
dog.makeSound(); // Inherited from Animal class
dog.bark();      // Specific to Dog class
登入後複製

多態性

多態表示變數、函數或物件可以採取多種形式。

例:動物類

想像一個 Animal 類別。透過多態性,我們可以建立一個 Cat 類,對其進行修改或新增功能。

class Animal {
    makeSound() {
        console.log("Animal sound");
    }
}

class Cat extends Animal {
    makeSound() { // Overriding method
        console.log("Meow");
    }
}

let cat = new Cat();
cat.makeSound(); // Calls the Cat's makeSound method
登入後複製

總而言之,OOP 的四大支柱——封裝、抽象、繼承和多態性——有助於使 JavaScript 程式碼組織起來、可重​​複使用且更易於理解。

以上是JavaScript 中 OOP 的四大支柱的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

在JavaScript中替換字符串字符 在JavaScript中替換字符串字符 Mar 11, 2025 am 12:07 AM

在JavaScript中替換字符串字符

jQuery獲取元素填充/保證金 jQuery獲取元素填充/保證金 Mar 01, 2025 am 08:53 AM

jQuery獲取元素填充/保證金

jQuery檢查日期是否有效 jQuery檢查日期是否有效 Mar 01, 2025 am 08:51 AM

jQuery檢查日期是否有效

10個jQuery手風琴選項卡 10個jQuery手風琴選項卡 Mar 01, 2025 am 01:34 AM

10個jQuery手風琴選項卡

10值得檢查jQuery插件 10值得檢查jQuery插件 Mar 01, 2025 am 01:29 AM

10值得檢查jQuery插件

HTTP與節點和HTTP-Console調試 HTTP與節點和HTTP-Console調試 Mar 01, 2025 am 01:37 AM

HTTP與節點和HTTP-Console調試

自定義Google搜索API設置教程 自定義Google搜索API設置教程 Mar 04, 2025 am 01:06 AM

自定義Google搜索API設置教程

jQuery添加捲軸到Div jQuery添加捲軸到Div Mar 01, 2025 am 01:30 AM

jQuery添加捲軸到Div

See all articles