I profiled my code and found out that my class, which implements Comparable<T>
, spends 8x more cpu time in
compareTo(Object)
than in
compareTo(T)
I assume that the slowdown is because of virtual table lookup for this method.
Is there a way to force static invocation of the function? (like in non virtual C++ methods)
I still want to use the Comparable<T>
interface since I use TreeSet
with this object and I'd like not to rewrite this code.
EDIT: No, I didn't implement the compareTo(Object) - this was automatically generated and reported by the profiler