IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

plus de precision sur les interfaces


Sujet :

Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    502
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 502
    Points : 227
    Points
    227
    Par défaut plus de precision sur les interfaces
    salut,

    je voudrais savoir qu'elles sont les utilités d'une interface car par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    interface a{
    public void afficher();}
     
    class b implement a
    {
     
    public b(){}
     
    public void afficher(){
    System.out.print("bonjour");
     }
    }
    on peut ecrire directement la methode afficher dans la et les classe
    alors pourquoi les interfaces

    merci !

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Pour spécifier un comportement "commun" qui pourrait avoir plusieurs implémentation...

    Le meilleur exemple à mon avis vient des collections :

    • Tu as l'interface List qui décrit les méthodes de bases d'un liste (ajouter/supprimer un élement, ...).
    • Tu as plusieurs implémentations différente : ArrayList (basé sur un tableau), LinkedList (basé sur une liste chainée).



    Ensuite tu peux manipuler directement comme une interface sans te soucier de l'implémentation exacte (tu manipules une List sans savoir s'il s'agit en réalité d'une ArrayList ou d'une LinkedList).

    C'est le principe de l'abstraction !


    a++

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    502
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 502
    Points : 227
    Points
    227
    Par défaut
    merci pour ta reponse mais je voudrais savoir si j'ai vraiment compris:


    l'interface List definit les methodes de base sans implementatation



    lorsque j'ecris :
    List list=new ArrayList() par exemple.

    on travail avec les methode specifique d'une ArrayList par exemple ou "autres" qui ont un rapport avec les methodes creer par l'interface List ok

    on peut dire alors d'une interface ne peut pas s'intancier par lui meme mais on peut creer une instance par la classe qui implementer l'interface par l'interface .

    est ce bon ?

    merci !

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Asmod_D Voir le message
    on peut dire alors d'une interface ne peut pas s'intancier par lui meme mais on peut creer une instance par la classe qui implementer l'interface par l'interface .
    Oui c'est ca. L'intérêt étant de faire du code générique qui ne soit pas lié à une implémentation. Ainsi tu peux utiliser d'autres types implémentant l'interface sans toucher à ton code

    a++

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    502
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 502
    Points : 227
    Points
    227
    Par défaut
    merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Precision sur les transformations
    Par jcloupgarou dans le forum Développement 2D, 3D et Jeux
    Réponses: 7
    Dernier message: 12/07/2006, 09h02
  2. [POO] question sur les interfaces
    Par root76 dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 20/05/2006, 17h12
  3. Précision sur les ListBox
    Par SebRs dans le forum Windows
    Réponses: 5
    Dernier message: 04/05/2006, 16h38
  4. precision sur les fichiers
    Par ghostdog dans le forum C
    Réponses: 3
    Dernier message: 20/12/2005, 11h23
  5. [VBA-E]Demande de précision sur les menus
    Par geffdenimes dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/06/2003, 10h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo