implements 和extends的区别
不同点
extends
- 首先,可以通过extends来创建一个类的父类;
- 其次,extends是继承某个类,继承之后可以父类方法,也可以重写父类方法;
- extends不能继承抽象类;
- extends在继承类时,也有约束。如果此类声明为final或定义为abstract就不能继承;
- extends不能继承多个类,换言之,java不支持多重继承;
implements
- 首先,implements是声明自己可以使用一个或多个接口,接口的方法一般为空,必须重写才可以使用。
- implements可以实现多个接口,例如
class A extends B implements C,D,E
implements特点
- 实现一个接口就是要实现接口的所有的方法(抽象类除外);
- 接口类中的所有方法都是抽象的;
- 多个无关的类可以实现同一个接口,一个类可以实现多个无关的接口。