今天看spring源码的时候发现了这样的代码
在我记忆中,javav好像只允许单继承,于是我在本地的编辑器测试了一下,结果发现只有接口且只包含抽象方法时是可以多个继承接口的。
接下来我们分析原因,接入有三个类A extends B,C, 加入B,C都有一个D方法,那么A编译的时候就不知道该引用哪个D方法,所以在java对于类来说只允许单继承。但是接口就无所谓了,因为接口内定义的都是抽象方法。这里需要注意的是如果B,C 任意一个接口含有default方法,那么也是不允许多继承的。
问题整理-JAVA接口可以多继承
最新推荐文章于 2024-07-14 02:45:32 发布