类与接口

内容目录

类与接口

之前的学习中我们可以使用子类来继承父类的属性和方法,但是有时候我们只需要某些特性,这时候再使用继承就显得有些笨重,我们可以使用接口将这些特性抽离出来,这样就可以在不同的类中复用这些特性。提高了面向对象编程的灵活性。

实例说明

如果我们有一个 Car 类和一个 Phone 类,它们都有一个 switchRadio 方法来打开关闭收音机。如果说这时候我们寻找一个 Car 和 Phone 的父类,就显得不合理且笨重,因为这两个类并没有更多共同的特性。这时候我们可以使用接口来抽离这些特性。

//使用接口抽象出特性
interface Radio {
  switchRadio(): void;
}

// interface Battery {
//   checkBatteryStatus(): void;
// }

interface RadioWithBattery extends Radio {
  checkBatteryStatus(): void;
}

class Car implements RadioWithBattery {
  //打开关闭radio
  switchRadio() {}
  //检查电池状态
  checkBatteryStatus() {}
}

class Phone implements RadioWithBattery {
  //打开关闭radio
  switchRadio() {}
  //检查电池状态
  checkBatteryStatus() {}
}

在上述的代码中,Car 类和 Phone 类都有控制收音机、检查电池的方法。这时候我们可以使用接口来抽离这些特性,然后在 Car 类和 Phone 类中实现这些特性。

相关笔记

Hello TypeScript

Hello TypeScript 一段简单的 Hello World 代码: const hello = (name: string) => { return `hello ${name}`; }; hello(`xxx`);

阅读全文

Class 类

Class 类 基本概念 类:定义了一件事物的抽象特点,包含它的属性和方法。 对象:类的实例。 面向对象三大特性:封装(将操作过程隐藏起来,只向外暴露需要使用地接口)、继承(子类继承父类,子类可以拥有父类地所有成员,并且可以更进一步)、多态(一个方法的多个实现)。

阅读全文

为什么要使用 TypeScript

什么是 TypeScript TypeScript 是 JavaScript 的一个超集,主要提供了类型系统和对 ES6 的支持。TypeScript 编译后的结果就是纯粹的 JavaScript,可以在任何支持 JavaScript 的环境中运行。

阅读全文