memorial76
Messages postés17Date d'inscriptionjeudi 14 juin 2007StatutMembreDernière intervention 9 août 2008
-
27 juil. 2007 à 10:20
memorial76
Messages postés17Date d'inscriptionjeudi 14 juin 2007StatutMembreDernière intervention 9 août 2008
-
27 juil. 2007 à 17:21
Bonjour à tous,
je suis débutant en programmation, et je lis actuellement le cours de Di Scala en pdf qui est super bien fait. Seulement, il y a un petit point sur lequel j'aimerai être éclairé: quelle est la différence entre une méthode virtuelle et une méthode abstriate? dans quels cas utilise-t-on l'une plus que l'autre?
merci d'avance.
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 27 juil. 2007 à 10:25
Salut, principalement, une méthode abstraite n'a pas de corps, elle ne fait rien contrairement à une méthode virtuelle, c'est juste une déclaration, il faudra la substituer dans les classes dérivées. Si une classe contient une méthode abstraite elle devient elle aussi abstraite c-à-d qu'on ne pourra pas l'instancier, seulement en dériver.
PurBonheur
Messages postés66Date d'inscriptionsamedi 24 février 2007StatutMembreDernière intervention 7 octobre 20071 27 juil. 2007 à 13:46
Salut,
- une méthode abstraite DOIS être dérivé pour être utilisé
- une méthode virtuelle PEUT être dérivé
Comme disait Lutinore, les méthodes abstraite ne contienne pas d'implémentation, donc non exécutable en l'état. De plus une classe abstraite ne peut pas être 'SEAL' par définition.