static void Main(string[] args) { //greift auf den statischen string des Interfaces zu Console.WriteLine(IFahrzeug.Test); //Ein String! //wirft einen Fehler aus, da sie nicht initialisiert wurde Auto meinAuto = new Auto("Beispielauto"); //meinAuto.Info(); //ruft die Standardinitialisierung des Interfaces auf IFahrzeug autoAlsFahrzeug = (IFahrzeug)meinAuto; autoAlsFahrzeug.Info(); //Ich bin ein Beispielauto; }
static void Main(string[] args) { // Auto meinAuto = new Auto(); meinAuto.Losfahren(); //Das Auto faehrt los! (implizierte Implementierung) //wenn eine explizite Implementierung vorhanden ist, wird diese bei einem gecasteten Objekt aufgerufen // IFahrzeug autoAlsFahrzeug = (IFahrzeug)meinAuto; autoAlsFahrzeug.Losfahren(); //Das Fahrzeug (Auto) faehrt los! (explizite Implementierung) Console.ReadLine(); }
static void Main(string[] args) { var fahrzeugitems = new IFahrzeug[] { new Auto ("Audi_4", "Coupe", 300, 50000), new Auto ("Tesla_S", "Limousine", 360, 85000), new Auto("Ferrari", "Coupe", 500, 250000), new Motorrad("KTM", "2", 15, 4500) }; //Zufallszahl initialisieren, mit foreach-Loop das Array durchgehen, //UpdatePrice mit Zufallszahl aufrufen und in Konsole ausgeben Random rnd = new Random(); foreach (var i in fahrzeugitems) { i.UpdatePreis(rnd.Next(1, 1000)); } Serialization.Run(fahrzeugitems); }