我只是偶然发现了sortin的以下重载java.util.Arrays:
public static void sort(Object[] a)
public static <T> void sort(T[] a, Comparator<? super T> c)
为什么第一个重载不是通用的,而第二个是?为什么第一个重载需要 aObject[]而不是 a Comparable[]?文档甚至指出:
数组中的所有元素都必须实现该
Comparable接口。
那么不使用 Java 的静态类型系统验证该约束有什么意义呢?