Я задавался вопросом, почему метод сортировки класса Массивов просит параметр текстового объекта []. Почему параметр не имеет типа, Сопоставимого []. Если Вы не передаете Сопоставимое [], это генерирует ClassCastException.
Почему... общедоступный статический пустой вид (Объект [] a) и не общедоступный статический пустой вид (Сопоставимый [] a)?Спасибо
Потому что вторая форма потребует перераспределения массива. Даже если вы знаете, что ваш массив содержит только сопоставимые объекты, вы не можете просто привести его к Comparable [], если исходный тип был Object [], поскольку тип массива не соответствует.
Вы можете:
Object[] arr = new String[0];
String[] sarr = (String[]) arr;
Но вы не можете:
Object[] arr = new Object[0];
String[] sarr = (String[]) arr;
Так что это преждевременная оптимизация :)
В противном случае вы не сможете передать Object []
in.