接口是Java中一种特殊的抽象类,是常量值和方法定义的集合
类的继承
Java中类是但继承的,但是可以实现多个接口,相信这个大家都是知道的,不允许类继承多个类的原因是,当两个父类中有同一个方法,那么子类应该继承哪个呢,但是实现多个接口就没有这一问题,因为我们是需要去实现这一方法的。但是jdk1.8之后接口引入了默认方法,那么当两个被实现的接口含有同名的默认方法呢
在这里插入代码片
`interface A{
default void a(){
System.out.println("a");
}
}
interface B{
default void a(){
System.out.println("b");
};
}
class D implements A,B{
@Override
public void a() {
System.out.println("c");
}
}
``
我们可以发现,子类是需要重写这个默认方法的,因为我们没有办法确定子类含有的是哪个方法
**接口之间的继承**
前面我们说了类不可以继承接口,那么接口能不能继承接口呢
![在这里插入图片描述](https://img-blog.csdnimg.cn/1633142a3ee54a26a2580b8bfb6282a4.png)
从这里面我们可以看到接口是可以继承接口的,而且还是可以继承多个接口,因为接口中没有方法的具体实现自然也就不用考虑是继承哪个方法的问题