cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 2008
-
20 déc. 2005 à 17:21
cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 2008
-
22 déc. 2005 à 15:06
Bonjour a tous,
Je débute sous .net avec C# et j'aimerais avoir un peu plus d'explication sur le polymorphisme ! je connais la definition : polymorphisme se dit d'une classe qui peut prendre plusieurs formes !!!! est ce bien cela ?
J'aimerais avoir un peu plus d'infos ou un p'tti exemple de code afin de bien saisir ce que cela veut dire !!!!!
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 21 déc. 2005 à 17:04
C'est simple mais pour comprendre les methodes virtuelles ( c'est elles qui sont polymorphes ) il faut comprendre ce que ne font PAS les methodes normales.
using System;
namespace ConsoleApplication
{
class Program
{
[ STAThread ]
private static void Main( )
{
Derive d = new Derive( );
Base b = ( Base )new Derive( ); // Derive est castée en Base.
d.Hello( );
b.Hello( ); // Le vrai type de l'objet n'est pas reconnu !!!
d.HelloVirtual( );
b.HelloVirtual( ); // La méthode a reconnue le vrai type de l'objet.
Console.ReadLine( ); // Wait.
}
}
public class Base
{
public void Hello( )
{
Console.WriteLine( "Hello de la classe Base." );
}
public virtual void HelloVirtual( )
{
Console.WriteLine( "Hello de la classe Base." );
}
}
public class Derive : Base
{
public new void Hello( )
{
Console.WriteLine( "Hello de la classe Derive." );
}
public override void HelloVirtual( )
{
Console.WriteLine( "Hello de la classe Derive." );
}
}
}
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 20 déc. 2005 à 18:18
Salut l'intérêt du polymorphisme c'est surtout les méthodes virtuelles, ça permet d'appeler les méthodes en fonction du vrai type de l'objet et non de la référence qui maintient l'objet.
cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 20081 21 déc. 2005 à 15:43
Salut salut Lutinor,
Merci pour ton post mais je reste toujours bloque ...je continue a avancer dans l'apprentissage de .Net mais ce n'est pas evident qd on ne bosse pas dans le domaine !J'ai du mal a piger ...ces phrases qui pour moi ne veulent rien dire :-( !
Si quelqu'un pouvait me definir ou me montrer un exemple simple du polymorphisme cela serait sympa !