丁鹿学堂前端培训:typescript之抽象类和接口的概念

71 阅读1分钟

抽象类:

abstract 开头的是抽象类,只能作为父类给子类继承,不能用来创建对象

abstract class Animal{
  name:string;
  age:number;
  constructor(name:string,age:number){
    this.name = name
    this.age = age
  }
  say(){
    console.log(111)
  }
}

抽象方法:

  1. 抽象方法必须定义在抽象类中
  2. 抽象方法继承的之类必须重写
  3. 抽象方法没有返回值
  4. 抽象方法就是在方法前面加abstract
 abstract class Animal{
  name:string;
  age:number;
  constructor(name:string,age:number){
    this.name = name
    this.age = age
  }
  abstract say():void
}

接口:

用来定义一个类的结构。

关键字:interface

可以代替类型声明type 去定义对象的结构。注意,结构里面的是分号

  interface myInterface{
    name:string;
    age:number;
  }
  const person:myInterface = {
    name:'zhangsan',
    age:18
  }

用接口去定义类:

类实现接口的关键字:implements

接口可以定义多个相同名字的,类型约束以两个的合在一起为标准。

接口的意义:实际上就是定义了一个规范,只要实现了接口,就是满足了规范,就可以在符合的 场景中使用。

注意:在接口中所有定义的方法类型都是void

  interface personInterface{
    name:string;
    age:number;
    say():void
  }
  class Person implements personInterface{
    name: string;
    age:number;
    constructor(name:string,age:number){
      this.name = name
      this.age = age
    }
    say(): void {
      console.log(1)
    }
  }


以上就是ts中的抽象类,接口的简单使用,还要在自己的项目中刻意练习,才能熟练掌握。