# 类与接口
# implements
- 类实现接口
如果不同的类里都包含着相同的方法, 我们可以将方法抽象出来组合到一个**接口(interface)**里, 然后在定义类的时候适用implements
关键字来将方法注入到类里. 再到类里详细地定义方法.
interface Action {
eat();
sleep();
}
class Animal {}
class Human extends Animal implements Action {
eat() {
console.log("用筷子吃饭");
}
sleep() {
console.log("在床上睡觉");
}
}
class Pig extends Animal implements Action {
eat() {
console.log("等别人喂");
}
sleep() {
console.log("在猪圈睡觉");
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
一个类还可以实现多个接口:
class Human extends Animal implements Action, OtherActions {
// ...
}
1
2
3
2
3
# extends
接口继承接口
接口与接口之间是可以继承的
interface Alarm {
alert();
}
interface LightableAlarm extends Alarm {
lightOn();
lightOff();
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8