はいの場合、コレクションがポリモーフィズムの概念をどのように利用しているか教えてください
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 のすべてのコレクション クラスは 1 つ以上のインターフェースを実装しているため、コレクションのインターフェースをプログラムする場合は、新しい実装に交換できます。
たとえば、定義して使用する場合
List<Integer> myList = new ArrayList<Integer>();
あなたはそれを置き換えることができます
List<Integer> myList = new LinkedList<Integer>();
残りのコードは変更する必要がありません。もちろん、リンクされたリストの途中で要素にアクセスしようとすると、タイミングに影響があります。
于 2013-02-06T12:29:19.107 に答える