我正在阅读有关顺序搜索实现的信息 SequentialSearch , 发现了一些毫无意义的东西(或者至少在我看来是这样)
public Iterable<Key> keys() {
Queue<Key> queue = new Queue<Key>();
for (Node x = first; x != null; x = x.next)
queue.enqueue(x.key);
return queue;
}
方法如何返回接口(interface)?我们不应该返回一个类/原始类型吗?
最佳答案
这是多态性的一个例子。 意味着可以从此方法返回对实现该接口(interface)的任何类的对象的引用。
这种设计用于方法要被子类覆盖的情况。 方法签名表示一个契约,所有重写此方法的子类都应返回方法签名中提到的接口(interface)的具体实现。
关于java - Iterable<Key> 作为返回类型,这是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28335487/