可能有益的例子是所谓二元方法，即其参数与方法所在对象的类型相同。例如 方法： 检查 和 在某种排序下的先后关系，但比较不同类型对象——比如，比较两个有理数以及比较两个字符串——的方式可以大相径庭。其它的常见二元方法例子还有相等性比较、算术运算、以及诸如求交集/ 并集的集合运算。在旧一点的 Java 版本中，比较方法是以接口 的方式指定的：interface Comparable {这种方式的缺点是方法参数类型指定为 。一个典型的实现可能是先把这个参数向下强制转换——如果不是期望的类型，那么报错：