gpt4 book ai didi

java - 接口(interface)的部分实现

转载 作者:搜寻专家 更新时间:2023-10-31 08:11:02 24 4
gpt4 key购买 nike

只有很少的时间搜索这些东西,我看不到任何涵盖我的特定场景的内容。

我正在使用第 3 方界面。让我们暂时假设如下:

    public interface interface1
{
public String getVar1();

public void method1();

public void method2();

}

我需要创建许多使用此接口(interface)的类,但“method2”的实际方法实现各不相同,因为“method1”和“getVar1”始终是相同的代码。

有没有办法创建一个抽象基类来实现接口(interface),但只强制子类实现“method2”?

我试过了

public abstract @Override void method2

但是虽然这在 Netbeans 的设计时是“可接受的”(不知道 Eclipse 是否有不同的行为),但在编译时它提示需要实现 method2。

如果不可能,公平地说,我只需要检查一下。

谢谢

最佳答案

您可以通过创建一个实现该接口(interface)的抽象类来做到这一点。此抽象类的任何子类都需要实现任何尚未定义的接口(interface)方法。

public abstract class AbstractInterface implements interface1 {
@Override
public String getVar1() {

}

@Override
public void method1() {

}
}
public class Implementation extends AbstractInterface {
@Override
public void method2() {

}
}

参见:Java tutorial on abstract classes .

关于java - 接口(interface)的部分实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18590276/

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