在 TypeScript 中,可以使用 interface
来定义接口,接口可以通过组合方式进行扩展和组合。你可以使用以下几种方式来实现接口的组合:
- 继承(extends):一个接口可以继承另一个接口,以获得其属性和方法。例如:
interface Animal {
name: string;
}
interface Dog extends Animal {
breed: string;
}
const myDog: Dog = {
name: "Bobby",
breed: "Labrador"
};
- 联合类型(union type):可以将多个接口或类型联合起来形成新的联合类型。例如:
interface A {
propA: number;
}
interface B {
propB: string;
}
type AB = A | B;
const obj: AB = {
propA: 42,
};
- 类型交叉(intersection type):将多个接口或类型结合起来形成新的交叉类型。例如:
interface Printable {
print(): void;
}
interface Loggable {
log(): void;
}
type LoggerPrinter = Printable & Loggable;
class Logger implements LoggerPrinter {
print() {
console.log("Printing...");
}
log() {
console.log("Logging...");
}
}
通过上述方式,你可以灵活地组合和扩展 TypeScript 接口,以满足不同的需求。
内容由零声教学AI助手提供,问题来源于学员提问