一直搞不明白 Java
中为什么要使用 implements
和 extends
来实现不同类型的继承,以至于我过段时间就会忘记这两种有啥区别,这很重要吗?
1 区别概述
extends
在英文翻译上是使伸长;扩大;扩展;延长;使延期;扩大…的范围(或影响)
implements
表示使生效;贯彻;执行;实施。
所以我们之间从翻译的字面意思理解,extends
是类的延长、扩展(除了 final
类、abstract
类)。而 implements
则是使得接口类得以实现。
implements 1 | extends 2 |
---|---|
implements 接口类的实现、执行 | extends表示类的衍生 |
implements 继承多个接口类 | extends 只能单一继承 |
虽然在语法上使用了 implements
和 extends
来实现不同性质的继承,但是我个人认为这是多余的,因为被继承的父类的性质是客观存在的,根本不需要使用关键词来区分就能达到区分的目标。