Hey Asadiya,
zuzüglich zur Antwort von VfL_Freak, gebe ich dir den Tipp, dass der Comperator eine eigene Klasse ist, welche das Interface Comperator<Typ> implementiert. Stell dir vor, du hast Autos, welche du gerne vergleichen möchtest. Allerdings möchtest du nicht alle nach einem Kriterium sortieren, sondern manche Autos nach Gewicht und manche nach ihrer Leistung. Dann kannst du z.B. 2 verschiedene Comperator schreiben, einer, welcher nach Gewicht sortiert und der andere nach Leistung... Das Tolle dabei ist, dass diese Comperator von den Autos komplett unabhängig ist. Comperable implementierst du hingegen in der Klasse, welche du nachher sortieren möchtest. Mit Comperable kannst du leider nur das in der compareTo() implementierte Kriterium für Objekte dieser Klasse verwenden.
grüße Fabian!