>>423
>javaのインターフェースはポリモーフィズムを実現するものじゃないの?
逆です。
ポリモルフィズムは、主に継承によるものです。

Javaのインターフェイスは、サブクラスにメソッドの実装を
強制するものです。
あるインターフェイスを継承したクラスのインスタンスは、
特定のメソッド(sortの場合は比較)をもっているしている
ことが保証されているから、静的な型チェックを通るよ、
っていう事です。
高階関数(というか、関数を渡すという意味)とは違うと思います。

どーでしょう?