Appel interface

Develloppeuranonyme23 -  
Bonjour,
En java, comment fait on pour appeler la méthode dune interface si on ne peux pas l'instancier?
Merci davance pour votre réponse,
Develloppeuranonyme23

1 réponse

  1. Modérateur
    Bonjour,

    Si la méthode est static tu peux l'appeler directement (comme pour une classe), sinon c'est qu'elle appartient à un objet, donc il faut instancier une classe qui implémente cette interface.
    1
    1. Donc je crée par exemple une interface avec les méthodes metode1() et metode2(), je crée un classe qui l'implemente et qui propose la metode1(), je crée un objet de son type, je crée une autre classe qui propose metode2(), dans le main je met
      Classe1 objet=new Classe1();
      Objet.metode2();
      et ça marche?
      0
    2. Modérateur
      @Develloppeuranonyme23Si tu implémentes l'interface avec les méthodes metode1() et metode2() tu es obligé que la classe qui l'implémente propose les deux méthodes, tu ne peux pas avoir une classe qui implémente que metode1 et une autre classe qui implémente que metode2, ou alors ce seront des classes abstraites, mais ça ne fait que reporter le problème car on ne peut pas instancier d'objet d'une classe abstraite.
      0
    3. @KXMais alors sil y a deux méthodes method1 comment l'interface sait laquelle on a besoin?
      0
    4. Modérateur
      @Develloppeuranonyme23Une interface c'est juste un contrat qui impose des méthodes à implémenter dans la classe, mais en soit l'interface ne fait rien et n'a besoin de rien.

      interface Toto {
          int methode1();
          int methode2();
      }
      
      class Tata implements Toto {
          int methode1(){
              return 1;
          }
          int methode2(){
             return 2;
          }
      }
      
      Toto toto = new Tata();
      int n1 = toto.methode1(); // n1 = 1
      0