-1

如果是,请让我知道集合如何利用多态性概念

4

2 回答 2

4

java.util.Collection是一个接口;也是java.util.List。所以当你有

class X {
  List<String> list;
}

并在其他地方有一个方法

void readX(X x) {
  x.list.add("you");
}

您正在使用将调用该方法的适当实现的多态性原则Collection#add

于 2013-02-06T12:28:40.427 回答
2

集合确实是多态的:Java 中的所有集合类都实现了一个或多个接口,如果您对集合的接口进行编程,则可以交换新的实现。

例如,如果您定义并使用

List<Integer> myList = new ArrayList<Integer>();

你可以用

List<Integer> myList = new LinkedList<Integer>();

其余代码不需要更改。当然,如果您尝试访问链表中间的元素,则会在时间上产生后果。

于 2013-02-06T12:29:19.107 回答