Je veux savoir pourquoi .compareTo()
est dans l' Comparable
interface alors qu'une méthode comme .equals
est dans la Object
classe. Pour moi, il semble arbitraire pourquoi une méthode comme .compareTo()
n'est pas Object
déjà dans la classe.
Pour l'utiliser .compareTo()
, vous implémentez l' Comparable
interface et implémentez la .compareTo()
méthode à vos fins. Pour la .equals()
méthode, vous remplacez simplement la méthode dans votre classe, car toutes les classes héritent de la Object
classe.
Ma question est pourquoi une méthode est-elle comme .compareTo()
dans une interface que vous implémentez plutôt que dans une classe comme Object
? De même, pourquoi la .equals()
méthode dans la classe Object
et non dans une interface doit-elle être implémentée?