Fragen


S. 7.
Diese Lernkarten bieten eine umfassende Einführung in die objektorientierte Programmierung (OOP) auf Universitätsniveau. Sie konzentrieren sich auf zentrale Konzepte wie Klassen, Objekte, Methoden, Vererbung und Polymorphie, sowie auf praktische Aspekte wie Konstruktoren, Attribute und Referenzen. Die Karteikarten sind ideal für Studierende der Informatik, die ein tiefes Verständnis der OOP-Prinzipien erlangen und ihre Programmierfähigkeiten verbessern möchten.
Cartes-fiches
59
Utilisateurs
1
Langue
Allemand
Catégorie
Informatique
Niveau
Université
Créé / Mis à jour
21.06.2019 / 21.06.2019

Cartes-fiches

Woraus besteht eine Klasse?

- Name, Konstruktor, Attributen

Was ist der Unterschied zwischen einem Objekt und einer Klasse?

  • Klasse beschreibt ein Objekt (Bauplan)

  • Objekt ist das was wirklich existiert

Was ist ein Attribut?

Variable die in einer Klasse ist

Wie spricht man aus einer Klassenmethode das Klassenattribut pos an?

mithilfe von this

Wie spricht man pos ̈uber das Objekt schiff dieser Klasse von außen an?

mithilfe von “.”

Wozu dient der Befehl new?

um ein neues Objekt zu erstellen

Was ist ein Konstruktor?

wird zum Anfang des Programms aufgerufen

Was ist ein Standardkonstruktor?

Klasse keinen Konstruktor zur Verf ̈ugung, erstellt Java automatisch einen Standardkonstruktor

Wann sollten Attribute auf jeden Fall public sein?

  • wenn auch andere Klassen auf dieses Attribut zugreifen sollen

Wann erfolgt der Aufruf eines Konstruktors?

am Anfang des Programms

Wie lautet das Schlüsselwort, um von einer anderen Klasse zu erben?

extends

Was tut die Annotation @Override?

Compiler prüft ob eine Basisklasse eine gleichnamige Methode besitzt die überschrieben werden kann

Was ist der Unterschied zwischen einem Objekt und einer Klasse?

  • Eine Klasse ist eine allgemeine Beschreibung und "Anleitung" dafür, wie ein bestimmter Gegenstand hergestellt wird

  • Ein Objekt ist dann einer dieser Gegenstände, die man mit Hilfe der Klasse, also der Beschreibung, erstellen kann.

Worauf deutet die NullpointerException hin?

Eine NullPointerException wird immer dann geworfen, wenn null anstelle einer Instanz eines Objekts verwendet wurde.

Was bedeutet es für die Sichtbarkeit, wenn weder public noch private dasteht?

Ohne Angabe kann nur ein Objekte des eigenen Packages zugreifen.

Was bewirkt protected?

  • nur fur Objekte der eigenen Klasse und davon abgeleiteten

Klassen (super) zugreifbar

Was hat der Befehl import mit Packages zu tun?

spart die Widerholung des Package-Namen

Was ist ein JPanel?

  • ist ein randloses Rechteck, in dem paint überschrieben werden

kann.

Wozu braucht man ein JFrame?

  • Fensterrahmen für ein GUI-Programm

  • JFrame kann eine Komponente per add in den Arbeitsbereich setzen.

Wie ermittelt man Höhe und Breite des Zeichenbereichs?

mithilfe von getWidth(), getHeight()

Was ist ein Attribut?

  • Attribut gehört zum Objekt

  • Eine Variable, die Teil des Zustands eines Objekts ist.

Was ist Vererbung?

  • wird zwischen Super- und Subklasse unterschieden

  • Superklasse ist Zusammenfassung von allgm. Attributen und Methoden unterschiedlicher aber ähnlicher Objekte

Wie sieht ein Klassenname aus (per Konvention)?

  • Erster Buchstabe groß

  • CamelCase bei mehreren Wörtern

  • Nomen

Wie sieht ein Variablenname aus (per Konvention)?

  • Erster Buchstabe klein

  • CamelCase bei mehreren Wörtern

Wie sieht ein Methodenname aus (per Konvention)?

  • Erster Buchstabe klein

  • CamelCase bei mehreren Wörtern

  • Verben oder Verb in Kombination

Wie sieht ein Konstantenname aus (per Konvention)?

  • erzeugt, indem man Variablen static und final deklariert

  • nur in Großbuchstaben geschrieben und einzelne Worte werden durch Unterstrich voneinander getrennt.

Was ist Überladen?

  • in einer Klasse mehrere Methoden definiert werden, deren Namen identisch sind, die sich aber in der Anzahl und/oder im Typ der Argumente voneinander unterscheiden

  • funktioniert auch in gleicher Klasse

Was ist Überschreiben?

- in einer Klasse mehrere Methoden definiert werden, deren Namen identisch sind, die sich aber in der Anzahl und/oder im Typ der Argumente voneinander unterscheiden

- funktioniert nur bei Vererbung

Mit welchem Befehl instanziiert man ein Objekt?

new

Was ist der Unterschied zwischen einer Referenz und einem Objekt?

  • Referenz ist Adresse des Objekts im Speicher

  • Objekt ist Instanz einer Klasse

Welches Schlusselwort kennzeichnet eine Vererbung?

extends

Uber welches Schlüsselwort ruft man Elemente der Basisklasse auf?

super

Wann ist eine Klasse abstrakt?

  • besitzt das Schlüsselwort “abstract”

  • die mindestens eine abstrakte Methode besitzt

  • von einer abstrakten Klasse kann kein Objekt angelegt werden

Worin unterscheidet sich eine abstrakte Methode von einer normalen?

  • enthält das Schlüsselwort “abstract”

  • statt Methodenrumpf hat eine abstrakte Methode ein Semikolon

Was unterscheidet eine abstrakte Klasse von einem Interface?

  • Interface besitzen ausschließlich abstrakte Methoden

  • abstrakte Klassen können auch implementierte Methoden besitzen

Wozu braucht man abstrakte Methoden?

für Methoden die keinen Methodenrumpf brauchen

Kann man Referenzen mit == vergleichen?

  • ja kann man

  • ist aber nur true wenn Adresse im Speicherraum die gleiche ist

Schreibweise fur Klassen? Variablen? Methoden? Konstanten? Packages?

  • Klassen großer Anfangsbuchstabe

  • CamelCase

  • Variablen kleiner Anfangsbuchstabe

  • Methoden kleiner Anfangsbuchstabe

  • Konstanten komplettes Wort groß geschrieben

  • Packages Namen durch Punkte getrennt

System.out.println(ZAHL): Was ist System, was ist out, was ist println

und was ist ZAHL?

  • System = Klasse

  • out = statischer Member der System Klasse

  • println = Methode

  • ZAHL = final

Was ist das Besondere an einem Interface?

  • Interfaces werden genutzt um Implementierungen austauschbar zu machen

  • Interface enthält nur abstrakte Methoden (es muss kein abstract for Meth. geschrieben werden)

  • Interface wird implementiert

  • Interface enthält keine Variablen

  • Klasse kann beliebig viele Interfaces implementieren

Étudier