TS中的接口,TS中的interface

接口有以下几个特点

一、接口是以 interface 开头的类。

二、接口的作用的定义子类的结构。

三、接口中的属性和方法都是抽象的,所以接口自然不能 new

四、接口类可以当成ts类型使用。

五、接口可以重复声明。

*下面是举例:

// 定义一个接口A
//接口以 interface 开头
// A中的所有属性个方法都是抽象的,属性不能有初始值,方法不能有方法体
interface A{
    num: number;
    str: string;
    sum():boolean;
}

*实现接口用 implements 关键字,不能用 extends

// 实现接口A
// 实现接口必须实现接口中的所有属性和方法。
class B implements A{
    num: number;
    str: string;
    constructor(num:number,str:string){
        this.num = num;
        this.str = str;
   }
    sum(): boolean {
        // .....省略n行代码
       return false;
    }
}

*接口类可以当成ts类型使用

// 定义一个接口A
interface A{
    num: number;
    str: string;
    sum():boolean;
}
// 接口可以当做ts类型使用
const c:A = {
    num: 1,
    str: '',
    sum: ()=>{
        return true;
    }
}

*接口可以重复声明,既可以存在多个同名的接口。

// 定义三个接口A
interface A{
    num: number;
}
interface A{
    str: string;
}
interface A{
    sum():boolean;
}
//实现A的时候,子类必须实现所有A接口内的属性和方法,如果有重复的属性或方法,则合并成一个
class B implements A{
    num: number;
    str: string;
    constructor( num: number,str: string){
        this.num = num;
        this.str = str;
    }
    sum(): boolean {
    }
    
}

你可能感兴趣的:(TypeScript,typescript)