java - 如果我们在接口(interface)中添加方法,我们如何在多个类中实现方法

标签 java

在一次面试中,面试官问了这个问题。在一个 Interface1 中有 10 个方法并且实现该 Interface1 有 1000 个类。后来在 Interface1 中我添加了第 11 种方法。您如何在所有类中实现第 11 种方法。后来他问你怎么能只在几个类(class)里实现。由于有 1000 个类(class),您不能只去每个类(class)并实现,这很花时间。你能告诉我如何解决吗?

最佳答案

他可能在暗示接口(interface)中的默认方法(仅适用于java 8)。

例如:

interface MyInterface {
    default void method() {
        // do stuff...
    }
}

所有实现该接口(interface)的类都将继承该方法,您还可以在需要特定行为时重写它。

class MyClass implements MyInterface {

    @Override
    public void method() {
        // do stuff...
    }
}

此外,您可以将基本方法留空(什么都不做),然后在您的 11 个类中覆盖它。或者您可以让另一个接口(interface)(例如:SubInterface)扩展 MyInterface,重写基方法并让您的 11 个类直接实现 SubInterface,这样它们继承最具体的行为。您所问的问题有无数种可能性(包括抽象类,正如评论中提到的那样)。

关于java - 如果我们在接口(interface)中添加方法,我们如何在多个类中实现方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55572971/

相关文章:

java - 在 for 循环中返回

java - 如何在 twitter4j 中传递用户名和密码?

java - 计算 Tabhost 中的选项卡总数

java - 根据用户输入动态更改应用程序名称

java - 为什么我无法连接到 openfire 服务器?

java - FluentWait 忽略不按预期工作

java - 当使用.jsp的view spring mvc,并传递ModelAndView时,如何输出模型?

java - 外部存储中的 Android/Java File.mkdirs() 不工作

java - 导入 Apache POI 单元库

java - Webi Rich Client 空指针异常错误