接口中不能有方法体吗?1.8以后可以了

以前在比较接口与抽象类区别的时候,接口中不能有方法体是接口的一个特点。而最近的学习改变了这一特点。

在JDK1.8以后是可以有方法体的,用default修饰即可:
在这里插入图片描述

注意点:

1、实现类会继承接口中的default方法

2、如果一个类同时实现接口A和B,接口A和B中有相同的default方法,这时,该类必须重写接口中的default方法:

为什么要重写呢?
是因为,类在继承接口中的default方法时,不知道应该继承哪一个接口中的default方法

3、如果子类继承父类,父类中有b方法,该子类同时实现的接口中也有b方法(被default修饰),那么子类会继承父类的b方法而不是继承接口中的b方法

猜你喜欢

转载自blog.csdn.net/weixin_45525272/article/details/127040837