什么是接口
在TypeScript中,接口(Interface)是一种描述对象的类型定义。它规定了对象应该具有哪些属性、方法以及构造函数等,但并不提供具体的实现细节。接口主要用于描述对象的公共部分,确保对象符合预期的结构。
接口的基本语法
例如,定义一个简单的Person
接口:
interface Person {
firstName: string;
lastName: string;
age: number;
greet(): string;
}
使用接口
实现接口
一旦定义了接口,就可以在类或对象字面量中实现它。实现接口意味着对象必须包含接口所指定的所有成员。
class Employee implements Person {
firstName: string;
lastName: string;
age: number;
constructor(firstName: string, lastName: string, age: number) {
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
}
greet(): string {
return `Hello, my name is ${this.firstName} ${this.lastName}.`;
}
}
扩展接口
接口可以像类一样扩展另一个接口,从而重用和组合类型定义。
interface Employee extends Person {
jobTitle: string;
}
可选属性与只读属性
接口还可以包含可选属性和只读属性。
interface Customer {
name: string;
email?: string; // 可选属性
readonly id: number; // 只读属性
}