Was ist das hier?

  • Eine Plattform von Flensburger Studenten für Flensburger Studenten
  • Ein Wiki zum Sammeln von Wissen
  • Ein Forum zum Austausch
  • Eine Wissensdatenbank zum Informatikstudium:
    • Programmieren in C, C#, PHP, Javascript, HTML, CSS
    • Datenbanken und Abfragen mit SQL
    • 2D / 3D - Gestaltung
    • Mathe, Physik, Gerätetechnik, RoBs
    • Audio- / Videotechnik
    • ...und vieles mehr

Anmelden

Warum registrieren?

Weil besser als gut!

 

C-Squared-abstrakte Klassen

Datum

28.10.10

Vortragender

Prof. Dr. Tepper

  • abstrakte Klassen und Methoden müssen mit abstract gekennzeichnet werden
  • in der implementierenden Subclass muss die methode mit override gekennzeichnet werden
  • die Implementationen werden polymorph ausgeführt
  • abstrakte Methoden sind implizit virtuell
Beispiel
C#
 
abstract public class Abstrakt
{
   protected int i = 41;
   abstract public void machWatt();
}
 
public class Konkret:Abstrakt
{
   public override void machWatt();
   {
      i++;
      Console..... („Konkret:+ i);
   }
}
 
public class SubKonkret:Konkret
{
  public override void machWatt()
  {
     i++;
     Console .... („SubKonkret:+ i);
  }
}
 
--->main:
{
   new Konkret().machWatt();    //Objekt ohne Namen Ausgabe Konkret
   new SubKonkret().machwatt(); //Objekt ohne Namen Ausgabe SubKonkret
//Aufruf über Basisklassenreferenz
 
  Abstract ab1 = new Konkret();   // Objekt instanziieren
  Abstract ab2 = new SubKonkret();// Objekt instanziieren
 
  ab1.machWatt();//Ausgabe Konkret
  ab2.machWatt();//Ausgabe SubKonkret
}
 

Ausgabe immer 42 weil jedesmal ein neues Objekt erzeugt wird... in dem i++ erfolgt


Kategorie: Programmieren3 | 3. Semester
| Mehr

Zahlen & Daten

  • 1456 Seitenaufrufe
  • 569 Tage alt
  • 4 Versionen
  • Letzte Änderung: 07.03.2011 um 17:16 Uhr

Publish