Unterschied zwischen Spezifikation und Implementierung?
Spezifikation –> WAS muss System aus Benutzersicht können
Implementierung –> WIE
Spezifikation =
Öffentliches Verhalten des Systems
Was muss zuerst kommen, Spezifikation oder Implementierung?
Spezifikation
Trennung von Spezifikation und Implementierung…
vereinfacht den Entwurf des Systems –> System in Subsysteme zerlegen
Was sind Vorteile von Interfaces?
Ist ein Interface eine Klasse?
Nein, es ist ein neuer Typ
Was kann ein Interface beinhalten?
Schlüsselwort für interface?
interface
UML Notation von Interface
Was ist das spezielle bei Methoden von einem interface?
Alle sind implizit public und abstract (muss nicht angegeben werden.
Wie viele Interfaces kann eine Klasse implementieren?
eine oder mehrere Schnittstellen
Schlüsselwort um eine Klasse an ein Interface anzubinden?
Von welchem Typ ist eine Instanz der Klasse Auto?
Auto, Beweglich und Object
UML Notation für Beziehung zwischen Klasse und Interface?
gestrichelter Pfeil
Ein Interface ist … der Implementierung
Abstraktion
Wie viele Schnittstellen kann eine Klasse realisieren?
Mehrere sind möglich
Kann ein Interface zu einem anderen Interface vererben?
Ja, Vererbung bei Interfaces ist möglich
Nach was werden Objekte korrekterweise verglichen?
Nach Zustand der Instanzvariablen von einer bestimmten Auswahl
Mit was können Objekte verglichen werden?
Methode equals von der Klasse Object
Was prüft die Standard-Implementierung der Klasse equals und kann man das so lassen?
Objektreferenzen (Speicheradressen) –> Überschreibung notwendig + Überschreibung von hashCode()
Wenn man die Methode equals überschreibt, sollte man auch…
die Methode hashCode() anpassen
Welche Attribute müssen beim Überschreiben der Methode hashCode verwendet werden?
Die gleichen wie in der equals Methode
Wie sollte man Datentyp String vergleichen?
Mit der .equals Methode und nicht mit ==
Welches Interface gibt es, wo für Vergleichen verwendet werden kann und welche Methode enthält diese?
Interface: Comparable
Methode: compareTo