|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
Iniciado por Sébastien, 24,ene. 2005 18:43 - 10 respuestas |
| |
| | | |
|
| |
Publicado el 24,enero 2005 - 18:43 |
Bonjour,
Comment WinDev 9 supporte-t-il le polymorphisme ? Peut-on avoir plusieurs constructeurs et méthodes du même nom ?
Merci pour votre aide,
Sébastien |
| |
| |
| | | |
|
| | |
| |
Publicado el 25,enero 2005 - 11:18 |
Une méthode est appelée sous la forme NomObjet:NomMéthode(paramètres). C'est donc le nom de l'objet qui permettra de distinguer deux méthodes ayant la même appellation. C'est la particularité "encapsulation" de la POO. |
| |
| |
| | | |
|
| | |
| |
Publicado el 25,enero 2005 - 16:46 |
Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien |
| |
| |
| | | |
|
| | |
| |
Publicado el 25,enero 2005 - 19:13 |
dans la doc je n'ai rien trouvé ( la seule surcharge mentionnée étant celle des fonctions du w-langage )
Ceci dit un test peut etre fait rapidement ^^
Sébastien wrote:
Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien
|
| |
| |
| | | |
|
| | |
| |
Publicado el 26,enero 2005 - 10:51 |
Non seulement ce n'est pas possible mais en plus j'ai une belle faute de protection si je tente de créer deux méthodes du meme nom :/
BOUDOT Sébastien - Blue River System wrote:
dans la doc je n'ai rien trouvé ( la seule surcharge mentionnée étant celle des fonctions du w-langage ) Ceci dit un test peut etre fait rapidement ^^ Sébastien wrote: Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien
|
| |
| |
| | | |
|
| | |
| |
Publicado el 26,enero 2005 - 11:58 |
BOUDOT Sébastien - Blue River System a couché sur son écran :
Non seulement ce n'est pas possible mais en plus j'ai une belle faute de protection si je tente de créer deux méthodes du meme nom :/ BOUDOT Sébastien - Blue River System wrote: dans la doc je n'ai rien trouvé ( la seule surcharge mentionnée étant celle des fonctions du w-langage ) Ceci dit un test peut etre fait rapidement ^^ Sébastien wrote: Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien C'est un peu normal non ? Il est evident que dans une meme classe, il ne peut y avoir deux methode de meme nom. Si tu veux créer un objet différent, avec des methode différente, il te faut 2 classes. La deuxième peut hériter de la première et tu redéfini uniquement les methodes qui changent dans la 2eme classes. C'est une reflexion de base sur le concept POO. Je te conseille de faire un tour sur des sites de vulgarisation de la POO pour en comprendre les concepts. Cordialement
-- Ceci est une signature automatique de MesNews. Site : http://mesnews.no-ip.com |
| |
| |
| | | |
|
| | |
| |
Publicado el 26,enero 2005 - 15:52 |
Bonjour Sébastien,
Non WinDev ne prend pas en charge la surcharge des métodes en poo Seul une surcharge des fonction du WLanguage est possible
Néamoins différentes techniques permettent de simuler la surcharge bien qu'il n'existera qu'une seule méthode pour tous faire.
1) l'utilisation des paramètres optionnels dans l'appel de la méthode avec la valeur null (tel les variants)
Cette technique permet de typer le paramètre à l'appel de la méthode
Plus délicat reste à identifier le type d'appel en fonction du type de donner envoyé.
Sébastien a écrit :
Bonjour,
Comment WinDev 9 supporte-t-il le polymorphisme ? Peut-on avoir plusieurs constructeurs et méthodes du même nom ?
Merci pour votre aide,
Sébastien
|
| |
| |
| | | |
|
| | |
| |
Publicado el 26,enero 2005 - 16:57 |
D'autres langages permettent une surcharge de méthodes.
http://www.commentcamarche.net/poo/polymorp.php3
Vincent wrote:
BOUDOT Sébastien - Blue River System a couché sur son écran : Non seulement ce n'est pas possible mais en plus j'ai une belle faute de protection si je tente de créer deux méthodes du meme nom :/ BOUDOT Sébastien - Blue River System wrote: dans la doc je n'ai rien trouvé ( la seule surcharge mentionnée étant celle des fonctions du w-langage ) Ceci dit un test peut etre fait rapidement ^^ Sébastien wrote: Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien
C'est un peu normal non ? Il est evident que dans une meme classe, il ne peut y avoir deux methode de meme nom. Si tu veux créer un objet différent, avec des methode différente, il te faut 2 classes. La deuxième peut hériter de la première et tu redéfini uniquement les methodes qui changent dans la 2eme classes. C'est une reflexion de base sur le concept POO. Je te conseille de faire un tour sur des sites de vulgarisation de la POO pour en comprendre les concepts. Cordialement |
| |
| |
| | | |
|
| | |
| |
Publicado el 26,enero 2005 - 19:23 |
Bonjour,
Non ce n'est pas possible avec WD9 contrairement au C++ Par contre, vous pouvez peut être utiliser un traitement différent en fonction du type de variable reçu avec la fonction TypeVariable
Frank
"Sébastien" <no@spam.com> a écrit dans le message de news: 41f51b03@news.pcsoft.fr...
Bonjour,
Comment WinDev 9 supporte-t-il le polymorphisme ? Peut-on avoir plusieurs constructeurs et méthodes du même nom ?
Merci pour votre aide,
Sébastien
|
| |
| |
| | | |
|
| | |
| |
Publicado el 28,enero 2005 - 16:24 |
Nan, c'est pas possible en WD9. Moi aussi, j'aimerais bien avoir plusieurs constructeurs...
Gromit "Sébastien" <no@spam.com> a écrit dans le message de news: 41f65123$1@news.pcsoft.fr...
Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien
|
| |
| |
| | | |
|
| | |
| |
Publicado el 28,enero 2005 - 17:19 |
Bonjour, certains languages dont dot net permet cette pratique qui s'apelle la surcharge exemple Convert.ToString(Value as Object) As String Convert.ToString(Value as Booléan) As String Convert.ToString(Value as Char) As String Convert.ToString(Value as Object, Provider As System.IFormatProvider) As String etc... il y en a comme ca 36
En WinDev la seule surcharge autorisée est celle des fonctions du WLanguage, une fois le fonction surchargée la fonction du WLangage peut être appelé en préfixant le nom de la fonction par WL.
Une Technique en WinDev permet de simulé dans certain cas la surchage Il sagit de créer une procédure sans typage de données et avec paramètres optionnel
exemple:
ToString(Value, param=NULL) SELON TypVar(Value) CAS wlBooléen SI param <> NULL ALORS SINON FIN CAS wlEntierSansSigne_1 SI param <> NULL ALORS SINON FIN FIN
cela est certes lourd a programmer mais peu être utile dans certains cas.
[DrCharly93]
BOUDOT Sébastien - Blue River System a écrit :
D'autres langages permettent une surcharge de méthodes. http://www.commentcamarche.net/poo/polymorp.php3Vincent wrote: BOUDOT Sébastien - Blue River System a couché sur son écran : Non seulement ce n'est pas possible mais en plus j'ai une belle faute de protection si je tente de créer deux méthodes du meme nom :/ BOUDOT Sébastien - Blue River System wrote: dans la doc je n'ai rien trouvé ( la seule surcharge mentionnée étant celle des fonctions du w-langage ) Ceci dit un test peut etre fait rapidement ^^ Sébastien wrote: Merci pour ta réponse,
C'est vrai, je crois que je voulais plutôt dire : surcharge. Soit plusieurs méthodes du meme nom à l'intérieur de la même classe/instance. Cest ca que je crois que WinDev ne supporte pas ... j'aimerais bien avoir plusieurs constructeurs différents et méthodes avec parametres différents !!
Sébastien
C'est un peu normal non ? Il est evident que dans une meme classe, il ne peut y avoir deux methode de meme nom. Si tu veux créer un objet différent, avec des methode différente, il te faut 2 classes. La deuxième peut hériter de la première et tu redéfini uniquement les methodes qui changent dans la 2eme classes. C'est une reflexion de base sur le concept POO. Je te conseille de faire un tour sur des sites de vulgarisation de la POO pour en comprendre les concepts. Cordialement |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|