a.定义抽象类使用class关键字,而定义接口使用interface关键字;
b.继承抽象类使用extends关键字,实现接口使用implements 关键字;
c.继承抽象类支持单继承,而实现接口支持多实现;
d.抽象类可以有构造方法,而接口中没有构造方法;
e.抽象类中可以有成员变量,接口中只能有常量;
f.抽象类中可以有成员方法(具体实现的方法),也可以有抽象方法,但方法前必须要 加abstract关键字;接口中只能有抽象方法(默认是abstract方法);
g.抽象类中增加方法可以不影响子类,而接口中增加方法都会影响子类;
h.从jdk1.8开始允许接口中出现带有方法体的方法,但必须使用 default关键字修饰(可 选择实现哪个方法),此时实现类可以选择性实现该接口中的方法。
抽象类和接口的区别
最新推荐文章于 2022-09-03 17:06:47 发布