Une classe abstraite peut contenir des méthodes non abstraites alors qu’une interface ne définit que des en-têtes de méthodes, donc sans corps. Ceci permet de créer un nouveau super type : les classes implémentant une ou plusieurs interfaces pourront alors être instanciées et stockées dans un conteneur du type de l’interface. C’est une alternative à la restriction d’héritage multiple imposé par Java. Important : Depuis Java 8, les interfaces peuvent contenir des définitions de méthodes par défaut. Les interfaces ne seront donc plus abstraites à 100%. La raison est que ce mécanisme pourra permettre de rajouter facilement des méthodes dans une interface sans avoir à les redéfinir dans toutes les classes les implémentant.
-> correction de la question du quiz "Dans le langage Java, qu’est-ce qu’une interface ?" où j'ai coché Une classe abstraite au lieu de une classe 100% abstraite, ce qui m'a valu de repasser le test. Je pense qu'il est légitime de poster ça ici et ailleurs sachant qu'on se plante aussi si on a juste.
EDIT (aujourd'hui on est passé à java 10 hein)
- Edité par Rick_Wakeman 10 août 2018 à 23:00:27
On sait jamais.
erreur dans le quiz
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.