HOWTO · Java

Extension de Comparable en Java

Ce tutoriel montre comment étendre Comparable en Java

Ce guide en apprendra davantage sur l’interface de comparaison étendue en Java. Il s’écrit Comparable<T>. C’est une interface qui est implémentée par de nombreuses classes en Java. Apprenons-en plus sur ses aspects.

Implémentation de l’interface Extends Comparable<T> en Java

Cette Interface n’a qu’une seule méthode, compareTo(Object o). Cette méthode compare l’objet avec l’objet spécifié pour la commande.

Il renvoie un entier négatif si l’objet est inférieur à celui spécifié. Il renverra zéro si l’objet et l’objet spécifié sont égaux.

De même, il renvoie un entier positif si l’objet est supérieur à l’objet spécifié.

Gardez à l’esprit qu’une classe ne peut pas étendre l’interface Java en Java.

L’interface ne peut qu’étendre l’interface. La classe Java ne peut étendre qu’une classe Java.

Comme Comparable<T> est une interface en Java, nous devons créer une interface personnalisée qui étendra l’interface Comparable. La classe personnalisée implémentera l’interface personnalisée.

public class Main {
  public static void main(String[] args) {
    Student s1 = new Student("Bill Gates");
    Student s2 = new Student("James");

    int res = s1.compareTo(s2);
    // comaprison of name of two students using iherited and extended method of
    // compareable.

    System.out.println(res);
  }
}
interface CustomComparable extends Comparable<Student> {
  // Custom interface which extends Comparable.
  // So CustomComparable have inherited method Compareto(Object o)
  public String getName();
}
class Student implements CustomComparable {
  // calss student implements CustomCompareable
  private String name; // String variable
  Student(String s) {
    this.name = s;
  }

  public int compareTo(Student other) { // overiding super method........... .
    return this.name.compareTo(other.getName());
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }
}

Production:

- 8

Nous créons simplement deux objets de classe étudiant qui implémentent notre classe comparateur personnalisée, étendant le véritable Comparable<T>. C’est ainsi que nous pouvons utiliser cette méthode compareTo() ici.