Menu Close

Programmieren, Algorithmen und Datenstrukturen 2 (Vorlesung 4)

Modulo

#include <iostream>
#include <math.h>
using namespace std;

int main()
{
    int x=10;
    int y=3;

    // Modulo Operation
    cout << "Modulo:\t";
    cout << (x % y);
    cout << endl;
    // Modulo selbst programmiert
    cout << "Modulo:\t";
    cout << x-y*(floor(x/y));
    cout << endl;

}

Generalisierung

  • Definition
    • Beziehung einer einzigen Klasse zu einer beliebigen Anzahl von verfeinerten Versionen der selben
  • Abgeleitete Klassen
    • Basisklasse <–> Abgeleitete Klasse (verfeinert)
    • Abgeleitete Klasse enthält mehr Atribute und Methoden
    • Basisklasse enthält alle geteilten Attribute und Methoden der Abgeleiteten Klassen ( Gruppierung)
    • Jedes Objekt vom Typ einer abgeleiteten Klasse ist gleichzeitig ein Typ aller Vorfahren
  • Vererbung
    • Vererbung ist der Prozess/Mechanismus die Attribute und Methoden der Basisklasse zu nutzen
    • Mechanismus ist über alle Vererbungsebenen hinweg transitiv (Vorfahren-/Nachkommens-Klassen)
    • Vererbungen sind immer Public-Methoden
    • Private-Methoden und Attribute von Vorfahren sind auch durch Kapselung geschützt
    • Private-Attribute müssen noch immer via get-Methode geholt werden!
  • Darstellung
    • Aufgebaut als hierarchische Struktur
    • Basisklasse wird mittels „Dreieck“ an die abgeleiteten Klassen verbunden

Diskriminator

  • Beschriftung wird an das Dreieck angefügt
  • Unterscheidungskriterium zwischen Vererbungensklassen / Gruppierung

struct – Struktur

  • Vorgänger der Klassen
  • Enthält „Attribute“ und „Methoden“
  • Vererbung ist möglich
  • Kapselung ist nicht enthalten
  • Beispiel:
    • Manager sind auch Angestellte mit besonderen Funktionen
    • Manager-Struktur enthält ein Memberobjekt des Typs Angestellter
    • Manager sind dadurch nicht automatisch Angestellte (Problem!)
    • Auslesen aller Angestellter benötigt somit zusätzlichen Aufwand
  • Besser:
    • Manager zu abgeleiteten Angestellten umwandeln
    • Manager besitzt somit alle Eigenschaften von Angestellten
    • Manager wird um eigene Eigenschaften erweitert

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.

Index