日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

typescript中abstractClass(抽象類)、extends、abstract

作者:web半晨 更新時間: 2022-06-06 編程語言
// 自執行函數的作用是形成單獨模塊(塊作用域),
// 防止此文件的變量或方法與其他文件的屬性或方法沖突
(function () {
    // 以abstract開頭的類是抽象類,
    // 抽象類和其他類區別不大,只是不能用來創建對象,
    // 也就是不能new Animal()的意思。
    // 抽象類就是專門用來被繼承的類
    // 抽象類中可以添加抽象方法

    abstract class Animal {
        name: string;

        constructor(name: string) {
            this.name = name;
        }

        // 定義一個抽象方法
        // 抽象方法使用abstract開頭,沒有方法體
        // 抽象方法只能定義在抽象類中,子類必須對抽象方法進行重寫
        // void沒有返回值(返回值為空)
        abstract sayHello(): void;
    }

    class Dog extends Animal {
        sayHello() {
            console.log('汪汪汪汪!');
        }
    }

    // 非抽象類“Cat”不會實現繼承自“Animal”類的抽象成員“sayHello”。
    class Cat extends Animal {
        // sayHello() {
        //     console.log('喵喵喵喵!');
        // }
    }

    const dog = new Dog('旺財');
    const cat = new Cat('喵喵');

    dog.sayHello();
    cat.sayHello();
})();

原文鏈接:https://blog.csdn.net/weixin_51157081/article/details/122294492

欄目分類
最近更新