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

Posted 流楚丶格念

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了接口中不能有方法体吗?1.8以后可以了相关的知识,希望对你有一定的参考价值。

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

在JDK1.8以后是可以有方法体的,用default修饰即可:

注意点:

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

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

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

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

以上是关于接口中不能有方法体吗?1.8以后可以了的主要内容,如果未能解决你的问题,请参考以下文章

Lesson 06:抽象类接口final

接口与面向接口编程

java之接口相关知识

接口与抽象类的异同

虚方法virtual抽象方法abstract接口interface区别

阶段总结