我几天前接受采访时,被问到这样的问题。
问:反向链接列表。给出以下代码:
public class ReverseList {
interface NodeList {
int getItem();
NodeList nextNode();
}
void reverse(NodeList node) {
}
public static void main(String[] args) {
}
}
我很困惑,因为我不知道接口对象可以用作方法参数。面试官解释了一下,但是我仍然不确定。有人可以启发我吗?
实际上,这是使用接口的最常见和最有用的方法之一。该接口定义了一个契约,您的代码可以与实现该接口的任何类一起使用,而不必知道具体的类-它甚至可以与编写代码时尚不存在的类一起使用。
Java标准API中有很多示例,尤其是在collections框架中。例如,Collections.sort()可以对实现List
接口的任何东西(不是仅仅实现ArrayList
or 进行排序LinkedList
,尽管实现自己的List
情况并不常见),并且其内容也实现Comparable
接口的实现(不仅仅是String
数字包装器类或数字包装类),并Comparable
为此实现自己的类目的很普遍)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句