typeScript--[接口interface的继承]

和类一样,接口也可以通过关键字 extents 相互继承。接口继承,分为:单继承和多继承,即继承多个接口。另外,接口也可以继承类,它会继承类的成员,但不包括具体的实现,只会把类的成员作为一种声明。

一.单继承

interface A {
  name: string;
}
// 继承A的name属性
interface B extends A {
  age: number;
}
// 这时B的接口里面需要有接口A的name并且要有本身的age
var b: B = {
  name: "逍遥的码农",
  age: 18,
};

二.多继承

interface A {
  name: string;
}
interface B {
  age: number;
}
interface C extends A, B {
  work: string;
}

var c: C = {
  name: "逍遥的码农",
  age: 18,
  work: "cv",
};

三.同名成员的类型必须相同

interface A{
    age:string;
}
interface B extends A{ //B接口会报错 接口“B”错误扩展接口“A”。属性“age”的类型不兼容。不能将类型“number”分配给类型“string”。
    age:number;
}

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