Woche 11: super, abstract & Hiding
Am Sonntag, 24.12.2023, beginnen die Weihnachtsferien; sie enden am Sonntag, 07.01.2024. Die erste Vorlesung nach den Ferien ist am Montag, 08.01.2024.
Nutzen Sie die Ferien, um sich eine Zusammenfassung des bisherigen Stoffs zu erstellen und sich ein wenig auszuruhen.
Nach dieser Woche können Sie …
- Abstrakte Klassen nach Vorgaben erstellen
- einfache Gegebenheiten der echten Welt objektorientiert modellieren
- Konstruktoren der Oberklasse aufrufen
- den Unterschied zwischen „Überladen durch Vererbung“ und „Überschreiben“ erklären
- den Unterschied zwischen „Überschreiben“ und „Hiding“ erklären
- erklären, warum der Zugriff auf statische Variablen/Methoden über Instanzen verwirrend sein kann
In dieser Woche schließen wir das Thema Vererbung ab und beantworten folgende Fragen: Wie können Konstruktoren der Oberklasse aufgerufen werden? Kann man verhindern, dass Instanzen einer (für sich genommen sinnlosen) Oberklasse erzeugt werden können? Kann man eigentlich auch Variablen überschreiben?
Vorlesung
Abstrakte Klassen & Super-Konstruktoren
Finale Klassen, Überladen, Hiding
Ausführen der automatischen Tests auf dem eigenen Rechner
Wenn Sie alte Aufgaben nochmal zum Üben bearbeiten und dafür die automatischen Tests durchlaufen lassen wollen, gehen Sie wie folgt vor:
Fall 1: Übungsaufgabe nicht über Classroom abgegeben
Fall 2: Übungsaufgabe bereits über den Classroom abgeben
- Gehen Sie auf https://github.com/hhu-progra/ bzw. für älte Aufgaben auf https://github.com/hhu-progra2/ und klicken Sie auf die gewünschte Aufgabe.
- Laden Sie Ihre Abgabe über Code → Download ZIP herunter und entpacken Sie die zip-Datei.
- Wechseln Sie im Terminal in den entpackten Ordner. Dort finden Sie Ihre abgegebenen Dateien, die Sie wie gewohnt mit Ihrem Editor bearbeiten und mit
javac
testen können. - Um die automatischen Tests auszuführen, führen Sie nacheinander die Befehle
cd test
und./gradlew test
(bzw. unter Windowsgradlew.bat test
) aus. - Denken Sie daran, ggf. wieder mit
cd ..
zurück in das Verzeichnis mit Ihren java-Dateien zu wechseln, wenn Siejavac
nochmal ausführen wollen.
🗃️ Selbsttests
2 Einträge
🗃️ Zusatzvideos
1 Einträge
🗃️ Videos für Profis
3 Einträge
Barbara Liskov ist Professorin für Elektrotechnik am MIT. Sie war an der Entwicklung der Programmiersprachen CLU und Argus beteiligt, die als wichtige Meilensteine für Objekt-orientierte Programmierung bzw. verteilte Systeme (Computersysteme, deren Teile sich auf verschiedenen Computern befinden und die sich über ein Netzwerk austauschen) gelten. Sie hat eine besondere Definition von Subtyping mitentwickelt, die heute als das Liskovsche Substitutionsprinzip bekannt ist. 2008 wurde sie u. a. für Ihre Beiträge im Feld der Programmiersprachen mit dem Turing Award ausgezeichnet.