我认为这意味着通过多态性的概念,变量的类型可以声明为接口(interface)的类型。例如:如果 Animal 是一个接口(interface),您可以编写以下代码:
Animal simba = new Lion();
我的理解正确吗?感谢您的帮助。
最佳答案
interface
的行为类似于 Java 中的 superclass
,因为它可以采用其实现的类型。
在您的示例中,具体而言,您将 Animal
定义为 Lion
实现的 interface
。
因此,您可以创建类型为Lion
的Animal
。代码如下所示:
interface Animal {
//do interfacing stuff
}
class Lion implements Animal {
public Lion() {
//...
}
//do implementing stuff
}
class Driver {
Animal simba = new Lion(); // This works because of polymorphism.
}
不过,您说这是 polymorphism 的示例是正确的.
关于java - 说接口(interface)也是一种类型是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8528690/