Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
5201 connectés 

 


Dernière réponse
Sujet : [java] differences entre interfaces et classes abstraites ??
matafan Dans une interface, on ne peut définir aucun code, ni aucune variable. Dans une classe abstraite, certaines méthodes (ou même toutes) peuvent être définies, et on peut de même définir des variables. Mais comme tu l'as remarqué, il y a effectivement très peu de différences entre une interface et une classe abstraite sans méthodes définies ni aucune variable. Dans ce cas, il faut d'ailleurs clairement utiliser une interface, puisqu'une classe abstraite n'apporte aucun avantage et ajoute une contreinte forte du fait que l'héritage, en Java, n'est pas multiple.
 
Tout le problème vient d'ailleurs de là : les interfaces servent à s'en sortir quand on aurait besoin d'héritage multiple. Le principale intéret des interfaces, c'est de pouvoir utiliser le polymorphisme sur des objets qui héritent déja d'un autre objet.

 

[edtdd]--Message édité par Matafan--[/edtdd]


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
matafan Dans une interface, on ne peut définir aucun code, ni aucune variable. Dans une classe abstraite, certaines méthodes (ou même toutes) peuvent être définies, et on peut de même définir des variables. Mais comme tu l'as remarqué, il y a effectivement très peu de différences entre une interface et une classe abstraite sans méthodes définies ni aucune variable. Dans ce cas, il faut d'ailleurs clairement utiliser une interface, puisqu'une classe abstraite n'apporte aucun avantage et ajoute une contreinte forte du fait que l'héritage, en Java, n'est pas multiple.
 
Tout le problème vient d'ailleurs de là : les interfaces servent à s'en sortir quand on aurait besoin d'héritage multiple. Le principale intéret des interfaces, c'est de pouvoir utiliser le polymorphisme sur des objets qui héritent déja d'un autre objet.

 

[edtdd]--Message édité par Matafan--[/edtdd]

__Lolo__ c une question de sémantique je crois
une classe dont toutes les méthodes sont abstraites, bah c justement le concept d'interface, donc pourquoi ne pas l'appeler par son nom ...
fykman A ma connaissance, il a tres peu (vois aucune) difference entre une classes totalement abstraite (ou toutes les methodes sont abstraites) et une interface. A part le fait, qu'une classe ne peut entendre qu'UNE seule classe et peut implementer PLUSIEURS interface, je ne vois pas qu'elle est la vraie raison "philophique" de l'existence des interfaces en JAVA.
 
Quelqu'un peux t'il repondre a ma question ?
Ca m'enerve de me dire que je sais utiliser quelque chose sans savoir sont utilité reelle .........

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)