It would be looking for compareTo() in whatever type "getBestMove()" returns, which you haven't told us. Does whatever that class is, have such a method?
In any case, you're not doing this quite right. "Comparable" is an interface that a class implements if you want to be able to compare one object to another, directly. If Foo implements Comparable, then you can write
if (aFoo.compareTo(anotherFoo) > 0) ...
On the other hand, Comparator is something that some OTHER class implements if you want to be able to compare two instances of your class using an instance of this second class; i.e.
FooComparator fc = ...
if (fc.compare(aFoo, anotherFoo) > 0) ...
The main reason Comparator is especially useful is that there is often more than one way to compare instances of a single class: you might sort Person objects by name, by address, by age... so you can define a NameComparator, an AddressComparator, and an AgeComparator. If you have Person implement Comparable, then you can only do it one way.
A lot of the
Java Collections classes let you supply a Comparator to tell the collection how to sort the objects you put into the collection.
So anyway: in your case, either Turn should implement Comparable, and implement the compareTo() method; or otherwise, create a new class TurnComparator that implements Comparator and the compare() method. But you're mixing things up as it stands.