gpt4 book ai didi

java - 在 Java 中实例化接口(interface)

转载 作者:IT老高 更新时间:2023-10-28 21:13:35 24 4
gpt4 key购买 nike

我有这个界面:

public interface Animal {
void Eat(String name);
}

而这里的代码实现了接口(interface):

public class Dog implements Animal {
public void Eat(String food_name) {
System.out.printf(food_name);
}

public static void main(String args[]) {
Animal baby2 = new Dog(); // <- this line
baby2.Eat("Meat");
}
}

我的问题是,为什么代码有效?无法实例化接口(interface)。然而在这种情况下,接口(interface)被实例化(用注释标记)。

这里发生了什么?

最佳答案

不,它不是 - 你正在实例化一个 Dog,但由于 Dog 是一个 Animal,你可以将变量声明为动物。如果您尝试实例化接口(interface) Animal 它将是:

Animal baby2 = new Animal();

尝试一下,然后看着编译器惊恐地尖叫 :)

关于java - 在 Java 中实例化接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16750772/

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