public interface Machin { public void truc(); public int bidule(string chose); }
public class MaClasse : Machin { }
public class MaClasse : Machin { public void truc() { throw new NotImplementedException(); } public int bidule(string chose) { throw new NotImplementedException(); } }
public abstract class MaClasseAbstraite { public abstract void Methode1(); public virtual int Methode2(int i) { return i * i; } public int Methode3(int i) { return i * 2; } } public class MaClasseFille : MaClasseAbstraite { public override void Methode1() { Console.WriteLine("Hello World"); } public override int Methode2(int i) { return base.Methode2(i) * i; } public new int Methode3(int i) { return i * 3; } }
MaClasseFille objet = new MaClasseFille(); objet.Methode1(); // Affiche "Hello World" objet.Methode2(2); // Renvoie 8, puisque Methode2 a été substituée objet.Methode3(2); // Renvoie 6, puisque Methode3 a été redéfinie // Jusque là, normal MaClasseAbstraite objet2 = (MaClasseAbstraite)objet; objet2.Methode1(); // Affiche "Hello World" objet2.Methode2(2); // Renvoie 8, puisque Methode2 a été substituée objet2.Methode3(2); // Renvoie 4 !!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionpublic void Methode(string parametre) { //... } IMonInterface monObjet = new MaClasse(); // MaClasse implémente IMonInterface Methode(monObjet); // Provoque une erreur qui dit que monObjet n'est pas de type string Methode(monObjet.ToString()); // Fonctionne
//directives 'using': using System; using System.Data.Common; //espace de nom courant 'traffic': namespace traffic { //les sous-directives de l'espace de nom: using Ch09Ex03; using VEHICLES; using System.Runtime.InteropServices; //classe de production du message: class l { //declaration des fonctions externes utilisant les fcts DLL class Program { [DllImport("vehicles.dll")] public static extern void f(VEHICLES.IPassengerCarrier A) { } //importation du fichier DLL: public static void Main(string[] args) { Console.WriteLine("Hello World!"); Train A=new Train(); Console.Write(f(A.ToString())); Console.ReadKey(true); } } } } 'traffic.l.Program.f(VEHICLES.IPassengerCarrier)' ne peut pas être extern et être déclaré (CS0179) - C:\Documents and Settings\Administrateur\Mes documents\benhsain\benhsain-c#\traffics\traffic\traffic\Program.cs:25,29
public static extern void f(VEHICLES.IPassengerCarrier A);