zl程序教程

您现在的位置是:首页 >  其它

当前栏目

TS之抽象类

TS 抽象类
2023-09-11 14:19:18 时间

例子

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

    abstract sayName():void;
}

class Dog extends Animal{
    age:number;
    constructor(name:string,age:number){
        super(name);
        this.age = age;
    }
    sayName(): void {
        console.log(`我是${this.name},我今年${this.age}岁了`);
    }
}

const dog = new Dog("旺财",23)
dog.sayName() // 我是旺财,我今年23岁了

abstract

我们用abstract关键字来定义抽象类和抽象方法

抽象类

  1. 抽象类不能用来创建对象
  2. 抽象类只能用于继承(说明类中有哪些属性,哪些方法)
  3. 在抽象类中可以添加抽象方法(如sayName方法)

抽象方法

  1. 抽象方法没有方法体(如sayName方法),且只能定义在抽象类中
  2. 子类必须对于抽象类中的抽象方法进行复写