Java中接口多继承的意义

初学Java,很多人都说Java中没有多继承,但是有多实现,我也明白其中的意思,
但是学习过程中发现Java中其实存在多继承的,它存在于接口与接口之间,不知道这种多继承的存在意义是什么?

import static java.lang.System.*;

public class ExtendsTest implements A {
    public static void main(String[] args) {
        ExtendsTest et = new ExtendsTest();
        et.a();
        et.b();
        et.c();
    }
}

interface A extends B, C {
    default void a() {
        out.println("------A------");
    }
}

interface B {
    default void b() {
        out.println("------B------");
    }
}

interface C {
    default void c() {
        out.println("------C------");

    }
}
 意义在于编写更容易理解的程序。

任何编程语言都有冗余的语法,也就是说,包含大量并非必要的语法,语言包含这样的语法越多,它就越好用。

好比为什么类型可以嵌套?
class Face
{
    public Eye eye;
}
class Eye
{
    public Color color;
        public Location location;
}
class Location
{
    public int x;
        public int y;
}
而不是
class Face
{
    public Color eyecolor;
        public int eyelocationx;
        public int eyelocationy;
}
因为分类让代码逻辑上更直观。

使用接口的核心原因是,为了能够向上转型为多个基类型。即利用接口的多实现,可向上转型为多个接口基类型。
使用多继承,代码可复用,各层之间可以通过接口来通信而不用管实现,每次修改只要改实现就可以了。而接口不会改变

在逻辑上让接口的关系更清晰。

好像拼插积木,单块可以拿去用在别的地方,组合起来拥有一个更的的逻辑抽象。

这是从设计的角度来说的。