interface I { void P (); } static void Q (IList<I> xs) { foreach (I x in xs) { x.P(); } } static void R<C> (Action<C> S, IList<C> xs) { foreach (C x in xs) { S(x); } }für gleichzeitige Behandlung mehrerer Objekte
(z. B. Object.equals(Object o)
falsch,
Comparable<T>.compareTo(T o)
richtig)