salut,
est-ce que lorsqu'on écritça signifie forcément que class2 est une classe interface?
Code : Sélectionner tout - Visualiser dans une fenêtre à part class1 emplements class2
salut,
est-ce que lorsqu'on écritça signifie forcément que class2 est une classe interface?
Code : Sélectionner tout - Visualiser dans une fenêtre à part class1 emplements class2
il n'y a pas de "classe interface", il y a des classes et des interfaces.
tu ne peut "implement" que des interfaces.
implémenter à ne pas mélanger avec hériter!
ca veux dire qe tu t'engage à respecter le contrat passé avec cette imterface exemple, avec actionlistener, tu implémentes la methode actionPerformed(...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part class implements interface
ca veux dire que tu récupères les méthode de ta classe mère, qu'elle sont utilisable par ta fille sans les redéclarer, mais aussi tu peux les redéfinir ou les enrichir grâce à l'appel de la methode mère via le mot clef super()
Code : Sélectionner tout - Visualiser dans une fenêtre à part class1 extends class2
voila!
à plus
voila, anitshka l'a dit en beaucoup plus clair
Merci bcp pour ces explications
ps: mais que voulez-vous dire par "le contrat passé" ?
l'interface contient des fonctions (entre autres)
la classe l'implémentant doit obligatoirement redéfinir ces fonctions, c'est une sorte de contrat entre la classe et l'interface
une interface definit un certain nombre de methode vides, que tu doit toi meme implementer. c'est ca le contrat.
Oui, une interface contient des méthdes sans le corps. La classe qui implémente l'interface doit définir toutes les fonctions de l'interface, même si tu n'as besoin que d'une seule.
Par exemple, l'interface KeyListener (pour écouter les événements "touche de clavier") définit 3 méthodes : keyPressed, keyReleased, keyTyped. Même si tu n'as besoin que de savoir si une touche est pressée (keyPressed) tu dois quand même, dans ta classe implémentant l'interface, définir les 2 autres. C'est pourquoi, quand tu veux implémenter une interface, il faut savoir toutes les méthodes utilisées par celle-ci.
Voila pourquoi on dit que c'est un "contrat" : l'interface dit : "ok je te passe cette méthode mais en échange, tu implémentes toutes mes méthodes"
Nas'
avec eclipse, les methodes a implementer sont ajoutées toutes seules, il suffit ensuite de les remplir.
Les noms sont en plus souvent tres explicites
Merci à tous, je comprends nettement mieux maintenant
Partager