java接口的多实现可能遇到的问题与解决方法

  • Post author:
  • Post category:java



目录


接口中的多实现


代码演示


作用:


问题总结


1:多实现接口中多个接口的抽象方法名重复


2:多实现接口中默认方法名重复


3:多实现类中默认方法与抽象方法重名


原理:


1:默认方法与接口方法重名


2:默认方法重名


3:抽象类方法重名


接口中的多实现

public class 实现类名 implements 接口1,接口2,接口。。。{}

代码演示

public class A implements D,E{
}

作用:

可以实现多个接口中的方法。但是抽象类需要重写。

问题总结

1:多实现接口中多个接口的抽象方法名重复

实现类只需要重写一个抽象类方法

2:多实现接口中默认方法名重复

只需要重写一次默认方法就行

3:多实现类中默认方法与抽象方法重名

只需要重写一次抽象法啊就行

原理:

1:默认方法与接口方法重名

接口的实现类似于继承,将接口的内存空间地址引入到实现类中

举个例子:假如我们实现了两个接口

我们的实现类分别拥有接口a,接口b的内存地址,因为默认方法不需要实现重写,所以只需要重写抽象方法test一次。

2:默认方法重名

有很多朋友不理解,默认方法不是不需要实现重写的吗,为什么多个默认方法就需要进行重写一次?

那么我通过实现类创建对象,调用tet()方法,大家知道我是调用接口a,还是接口b的吗?

所以我们才需要重写默认方法,让我们可以确定调用的到底是哪个方法。即使遇到多个默认方法重名也是如此。

3:抽象类方法重名

假如抽象类重名,那么写多个抽象类与一个抽象类相比有什么区别吗?

聪明的你心中应该有了答案



版权声明:本文为qq_60614034原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。