Voglio sapere perché .compareTo() si trova in Comparable interfaccia mentre un metodo come .equals si trova in Object classe. Per me, sembra arbitrario il motivo per cui un metodo come .compareTo() non è già nella classe Object .
Per utilizzare .compareTo() , implementa l'interfaccia Comparable e implementa il metodo .compareTo() per i tuoi scopi. Per il metodo .equals() , devi semplicemente eseguire l'override del metodo nella classe, poiché tutte le classi ereditano dalla classe Object .
La mia domanda è: perché un metodo come .compareTo() in un'interfaccia implementata piuttosto che in una classe come Object ? Allo stesso modo, perché il metodo .equals() nella classe Object e non in alcune interfacce deve essere implementato?