Java Flashcards
Was bedeutet objektorientierte Programmierung?
- Orientierung an der Grundstruktur der Wirklichkeit
- reale Objekte werden abstrahiert
- Zustände und Eigenschaften werten durch Attribute abgebildet
- Verhalten wird durch Methoden abgebildet
Definiere den Begriff “Klasse”!
Bauplan mit Attributen und Methoden, der zur Erstellung von Instanzen verwendet werden kann
Definiere den Begriff “Objekt”!
Instanziierte, konkret realisierte Klasse
Umsetzung des „Bauplans“ mit Eigenschaften und Methoden
Was ist der Garbage Collector und wozu dient er?
allozierter Speicherplatz soll, wenn er nicht mehr referenziert wird, wieder freigegeben werden
dient der effizienteren Speicherverwaltung
Was versteht man unter Vererbung?
hierarchische Relation zwischen zwei Klassen:
eine Oberklasse vererbt Attribute und Methoden an eine Unterklasse
Was versteht man unter Polymorphie?
Methoden agieren in Abhängigkeit ihrer Verwendung
Welche Zugriffsrechte gibt es in Java?
Nenne jeweils die Auswirkung ihrer Nutzung!
Sichrbarkeit/Zugriff von Attributen und Methoden wird eingeschränkt
- public +
- innerhalb und außerhalb
- protected #
- nur innerhalb von erbenden Klassen
- private -
- nur innerhalb der eigenen Klasse
- package private
- nur im eigenen Package
Was versteht man unter dem Überladen von Methoden?
gleicher Methodenname, unterschiedliche Parameteranzahl und/oder Rückgabewertdatentypen
Was ist der Konstruktor?
spezielle Methode zum Initialisieren, sie trägt den Namen der Klasse
Überladen lässt zu, dass es mehrere Konstuktoren geben kann
Welche Eigenschaften macht eine abstrakte Klasse aus?
- von abstrakte Klassen können keine Instanzen gebildet werden
- nur abstrakte Klassen dürfen abstrakte Methoden besitzen
Was ist eine abstrakte Methode?
- nur die Signatur einer Methode, also kein Rumpf
- Zwingt erbende Klasse diese Methode zu implementieren
Wozu verwendet man das Schlüsselwort “extends”?
der Klassenname gefolgt von „extends“ gefolgt vom Namen einer zweiten Klasse bewirkt, dass die erstegenannte Klasse von der nachgestellten Klasse erbt
Beispiel „class Circle extends Geometric“
lies: die Klasse Circle erweitert die Klasse Geometric
Was ist ein Interface und wozu wird es verwendet?
- Interfaces können keine Methoden implementieren, nur deren Signaturen
- man kann keine Instanzen von Interfaces erzeugen
Verwendung
- Sicherstellen der Implementierung von gewissen Methoden in der erbenden Klasse
- mit Interfaces wird die Mehrfachvererbung für Klassen realisiert (keine Kollision der Implementierungen)
Was ist eine Exception?
eine Ausnahmesituation, die in Java mit einem Try-Catch-Block abgefangen werden kann
bewusst ausgelöst durch das Schlüsselwort “throw”
Was sind statische Attribute und Methoden?
ein statisches Attribut existiert nur einmal pro Klasse, nicht für jedes Objekt
eine statische Methode kann nur ohne Instanz aufgerufen werden (Beispiel: Math.max() )