#跟着坚果学鸿蒙#ArkTS 基础知识详解:接口
·
接口声明引入新类型。接口是定义代码协定的常见方式。
任何一个类的实例只要实现了特定接口,就可以通过该接口实现多态。
接口通常包含属性和方法的声明
interface Style {
color: string; // 属性
}
interface AreaSize {
calculateAreaSize(): number; // 方法的声明
someMethod(): void; // 方法的声明
}
- 接口属性
接口属性可以是字段、getter、setter或getter和setter组合的形式。
属性字段只是getter/setter对的便捷写法。以下表达方式是等价的:
interface Style {
color: string;
}
interface Style {
get color(): string;
set color(x: string);
}
实现接口的类也可以使用以下两种方式:
interface Style {
color: string;
}
class StyledRectangle implements Style {
color: string = '';
}
interface Style {
color: string;
}
class StyledRectangle implements Style {
private _color: string = '';
get color(): string { return this._color; }
set color(x: string) { this._color = x; }
}
类通过implements关键字实现接口,确保遵循接口定义的契约。
// 接口定义
interface Drawable {
draw(): void;
}
// 类实现接口
class Square implements Drawable {
side: number;
constructor(side: number) {
this.side = side;
}
draw(): void { // 必须实现接口方法
console.log(`Drawing square with side ${this.side}`);
}
}
更多推荐
所有评论(0)