• 丁鹿学堂前端培训:typescript之抽象类和接口简介


    ### 抽象类:

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

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

    抽象方法:

    1.  抽象方法必须定义在抽象类中
    1.  抽象方法继承的之类必须重写
    1.  抽象方法没有返回值
    1.  抽象方法就是在方法前面加abstract

    ```
     abstract class Animal{
      name:string;
      age:number;
      constructor(name:string,age:number){
        this.name = name
        this.age = age
      }
      abstract say():void
    }
    ```

    接口:

    用来定义一个类的结构。

    关键字:**interface**

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

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

    2 **用接口去定义类:**

    类实现接口的关键字:**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中的抽象类,接口的简单使用,还要在自己的项目中刻意练习,才能熟练掌握。

  • 相关阅读:
    自制网页。
    反序列化漏洞复现(typecho)
    汽车数据安全事件频发,用户如何保护隐私信息?
    爬虫 — 正则案例
    Redis基础命令(List类型)双链表
    共谋韬略、共巢未来,电巢与韬略“战略合作签约仪式”圆满举办!
    QTday03(信号与槽、对话框)
    【0907作业】写一个shell脚本,将以下内容放到脚本中
    nodejs连接mysql
    JavaScript系列之赋值运算符
  • 原文地址:https://blog.csdn.net/qq_38525381/article/details/125431270