У меня есть класс, реализующий структуру данных, хранящую объекты Comparable. Некоторые экземпляры содержат Long и другие строки.
Я хочу подсчитать количество сравнений, не слишком меняя класс структуры данных или приложение.
Одна из естественных идей состоит в том, чтобы реализовать новый класс (скажем, MyLong), чей метод compareTo() увеличивает некоторый счетчик статистики, а затем вызывает настоящий метод compareTo(). Затем измените приложение для хранения MyLong вместо Long и т. д. Это не работает, потому что я не могу наследовать от Long или String.
Можно ли заставить этот подход работать? Есть ли другой способ достижения этой цели?