java - 使用抽象类向接口(interface)添加方法

标签 java

我想向接口(interface)添加一个方法,但我不想重写所有实现(我只需要在一两个实现中使用它)。我读到我可以通过使用抽象类来实现这一点,但我不太清楚它是如何完成的?

界面:

public interface Animal {
    public void doSound();
}

类(class):

public class Cat implements Animal {

    @Override
    public void doSound() {
        System.out.print("meow");
    }

}


public class Dog implements Animal{

    @Override
    public void doSound() {
        System.out.print("bark");
    }

}

我想要的是能够打电话

animal.doSomethingElse()

但我不想将此方法添加到每个实现中。这可以吗?

编辑: 之前应该提到过这一点,我没有使用 java 8。

最佳答案

您可以将 Animal 更改为抽象类。这将使您能够有选择地实现方法:

public abstract class Animal {

    public abstract void doSound();

    public void doSomethingElse() {
    }
}

关于java - 使用抽象类向接口(interface)添加方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25746974/

相关文章:

java - 如何捕获 Android Activity 的 <init> block 异常?

java - Hibernate EntityManger 新实例在合并后不返回查找结果

java - Spring Maven + IntelliJ 和 404

Mac OS 中的 Java 文件锁定

java - 访问 NxN 二维数组中节点的状态

java - 任务的非 Javafx 等效项

java - 接口(interface)中的 Setter 和对象到数组中

Java 错误;无法解析变量名

java - PKIX 路径构建失败。我们应该导入证书吗?

java - Eclipse Neon 能否确定我不需要开发的项目?