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
Maximilian
Maximilian

Herzlich willkommen! Ich bin Max, ein Informatiker mit über 15 Jahren Berufserfahrung. Hier teile ich meine Leidenschaften, Erlebnisse und Perspektiven. Ich lade dich ein, gemeinsam mit mir auf eine Entdeckungsreise zu gehen.

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.