java接口之间的多继承

java接口之间的多继承

类与类之间是单继承的。直接父类只有一个。

类与接口之间是多实现的。一个类可以实现多个接口。

接口与接口之间是多继承的。

注意事项:

多个父接口当中的抽象方法如果重复,没关系。

多个父接口当中的默认方法如果重复,那么子接口必须进行默认方法的覆盖重写,【而且带着default关键字】。

1
2
3
4
5
package cn.itcast.day10.demo03;


public class Demo01Relations {
}
1
2
3
4
5
6
7
8
9
10
11
12
13
package cn.itcast.day10.demo03;

public interface MyInterfaceA {

public abstract void methodA();

public abstract void methodCommon();

public default void methodDefault() {
System.out.println("AAA");
}

}
1
2
3
4
5
6
7
8
9
10
11
12
13
package cn.itcast.day10.demo03;

public interface MyInterfaceB {

public abstract void methodB();

public abstract void methodCommon();

public default void methodDefault() {
System.out.println("BBB");
}

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package cn.itcast.day10.demo03;

/*
这个子接口当中有几个方法?答:4个。
methodA 来源于接口A
methodB 来源于接口B
methodCommon 同时来源于接口A和B
method 来源于我自己
*/
public interface MyInterface extends MyInterfaceA, MyInterfaceB {

public abstract void method();

@Override
public default void methodDefault() {

}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package cn.itcast.day10.demo03;

public class MyInterfaceImpl implements MyInterface {
@Override
public void method() {

}

@Override
public void methodA() {

}

@Override
public void methodB() {

}

@Override
public void methodCommon() {

}
}