gpt4 book ai didi

Java在派生类中实现接口(interface)方法的方式

转载 作者:行者123 更新时间:2023-11-30 06:53:22 25 4
gpt4 key购买 nike

在开发一些演示应用程序时,我遇到了如下情况。

我基本上有 3 个类(class):

-One interface MyInterface

-One base class MyBaseClass

-One derived class MyDerivedClassExtendsMyBaseClass

在此结构中,MyBaseClass 实现 MyInterface。 Java 强制我在 MyBaseClass 中实现 MyInterface 的方法。

当MyDerivedClassExtendsMyBaseClass也实现MyInterface时,Java不会强制我实现MyInterface的方法。由我来重写 MyInterface 方法。

public interface MyInterface{

public void myMethod();

}

public class MyBase implements MyInterface{

//some members and methods here

@Override
public void myMethod(){
//You have to implement myMethod
}
}

public class MyDerivedClassExtendsMyBaseClass extends MyBase implements MyInterface{

//You don't have to implement myMethod() here!!
}

这样做有什么特殊目的吗?为什么我不必实现接口(interface) MyInterface 的方法,尽管我的派生类实现了它?

谢谢!

最佳答案

因为您的派生类扩展了 MyBase 类,并且它已经强制实现 MyInterface 的方法。由于派生类是 MyBase 的子类,因此它可以从父类(super class)继承,因此无需再次实现它们。总有一个实现(现在来自父级)。

如果删除扩展,您将再次被迫在派生类中实现。

关于Java在派生类中实现接口(interface)方法的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42290357/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com