Java Flashcards

1
Q

Was bedeutet objektorientierte Programmierung?

A
  • Orientierung an der Grundstruktur der Wirklichkeit
  • reale Objekte werden abstrahiert
  • Zustände und Eigenschaften werten durch Attribute abgebildet
  • Verhalten wird durch Methoden abgebildet
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Definiere den Begriff “Klasse”!

A

Bauplan mit Attributen und Methoden, der zur Erstellung von Instanzen verwendet werden kann

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Definiere den Begriff “Objekt”!

A

Instanziierte, konkret realisierte Klasse

Umsetzung des „Bauplans“ mit Eigenschaften und Methoden

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was ist der Garbage Collector und wozu dient er?

A

allozierter Speicherplatz soll, wenn er nicht mehr referenziert wird, wieder freigegeben werden

dient der effizienteren Speicherverwaltung

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was versteht man unter Vererbung?

A

hierarchische Relation zwischen zwei Klassen:
eine Oberklasse vererbt Attribute und Methoden an eine Unterklasse

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was versteht man unter Polymorphie?

A

Methoden agieren in Abhängigkeit ihrer Verwendung

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Welche Zugriffsrechte gibt es in Java?

Nenne jeweils die Auswirkung ihrer Nutzung!

A

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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was versteht man unter dem Überladen von Methoden?

A

gleicher Methodenname, unterschiedliche Parameteranzahl und/oder Rückgabewertdatentypen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was ist der Konstruktor?

A

spezielle Methode zum Initialisieren, sie trägt den Namen der Klasse

Überladen lässt zu, dass es mehrere Konstuktoren geben kann

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Welche Eigenschaften macht eine abstrakte Klasse aus?

A
  • von abstrakte Klassen können keine Instanzen gebildet werden
  • nur abstrakte Klassen dürfen abstrakte Methoden besitzen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist eine abstrakte Methode?

A
  • nur die Signatur einer Methode, also kein Rumpf
  • Zwingt erbende Klasse diese Methode zu implementieren
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wozu verwendet man das Schlüsselwort “extends”?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was ist ein Interface und wozu wird es verwendet?

A
  • 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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was ist eine Exception?

A

eine Ausnahmesituation, die in Java mit einem Try-Catch-Block abgefangen werden kann

bewusst ausgelöst durch das Schlüsselwort “throw”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was sind statische Attribute und Methoden?

A

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() )

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was sind Generics?

A

Einschränkung der Datenstrukturen auf die Behandlung/Nutzung von einer bestimmten Klasse

17
Q

Was ist Selbstreferenzierung mit “this”?

A

“this” hält die Referenz auf die eigene Instanz

18
Q

Was versteht man unter dynamischer Methodenbindung?

A

Die Klassenzugehörigkeit des Objekts zur Laufzeit bestimmt, welche Methode aufgerufen wird

(nicht der Typ der Variablen)