У меня есть несколько методов сортировки, которые для работы должны принимать объект, для которого определено compareTo
.
Следующее как часть общего определения:
private static <SomeType extends Comparable<? super SomeType>>
void doSomeSort(SomeType[] a, int left, int right){
кажется, делает свое дело.
Моя проблема в том, что я не совсем понимаю, что за <SomeType extends Comparable<? super SomeType>>
фактически определяет.
Это означает, что вы можете заменить тип, который является интерфейсом, расширяющим Comparable, который создается сам по себе ...
Я не понимаю.
Не могли бы вы помочь прояснить это определение?