设计者们拒绝了 Liskov 代换原则（即子类对象受的限制一定比它们父类对象少）。另一个参数类型协变可能有益的例子是所谓二元方法，即其参数与方法所在对象的类型相同。例如 方法： 检查 和 在某种排序下的先后关系，但比较不同类型对象——比如，比较两个有理数以及比较两个字符串——的方式可以大相径庭。其它的常见二元方法例子还有相等性比较、算术运算、以及诸如求交集 / 并集的集合运算。在旧一点的 Java 版本中，比较方法是以接口 的方式指定的：interface Comparable {这种方式的缺