TypeScript学习之——抽象类(个人笔记)

介绍


抽象类(abstract class)在某种程度上和接口类似,可以用于约束子类的成员。但是抽象类可以包含具体的实现,接口只是对成员的抽象。一般比较大的类目推荐使用抽象类。

abstract class Animal {
    eat(food: string): void { // 抽象类可以包含具体的实现,接口不包含具体实现
        console.log('动物吃' + food);
    }
    // 抽象方法--也不需要具体的实现(方法体)
    abstract run(distance: number): void 
}
// abstract class只能被继承,不能通过new来创建实例对象
// Dog不会实现继承自“Animal”类的抽象成员“run”。当父类中有某个抽象方法时,子类必须实现这一个方法。
class Dog extends Animal {
    run(distance: number): void {
        console.log('Dog run' + distance);
    }

}

你可能感兴趣的:(TypeScript学习之——抽象类(个人笔记))