Я профилировал свой код и обнаружил, что мой класс, который реализует Comparable<T>
, тратит в 8 раз больше времени процессора в
compareTo(Object)
чем в
compareTo(T)
Я предполагаю, что замедление вызвано поиском в виртуальной таблице для этого метода.
Есть ли способ вызвать статический вызов функции? (как в не виртуальных методах C ++)
Я все еще хочу использовать интерфейс Comparable<T>
, так как я использую TreeSet
с этим объектом, и я бы не хотел переписывать этот код.
РЕДАКТИРОВАТЬ: Нет, я не реализовал compareTo (Объект) - это было автоматически сгенерировано и сообщил профилировщик