Schnittstelle und Implementierung

Schnittstelle und Implementierung

Bei der Verwendung von Klassen muss der Anwender, in diesem Fall ist das der Programmierer, nur die Definition der Attribute und die Methodenköpfe kennen, um damit umgehen zu können. Die Angaben aus der folgenden Abbild sind vollkommen ausreichen für den Programmierer um zu sehen, welche Attribute (Eigenschaften) und Methoden verfügbar sind und wie die Methoden vom Benutzer aufgerufen werden können. Man nennt dies Angaben auch Schnittstellen weil, diese dem Programmierer Zugriff auf alle Eigenschaften und Fähigkeiten (Methoden) der Klasse ermöglicht.

Beispiel mit Brüche:

private int zaehlern1;
private int nennern1;
private int zaehlern2;
private int nennern2;

getZaehler1()
setZaehler1()


getNenner1()
setNenner1()


getZaehler2()
setZaehler2()


getNenner2()
setNenner2()


addiereBruch()
addiere(double eingabex1, double eingabey1, double eingabex2, double eingabey2)


subtrahiereBruch()
subtrahiere(double eingabex1, double eingabey1, double eingabex2, double eingabey2)


multipliziereBruch()
multipliziere(double eingabex1, double eingabey1, double eingabex2, double eingabey2)


dividiereBruch()
dividiere(double eingabex1, double eingabey1, double eingabex2, double eingabey2)


kontrolle(int z, int n, String i)
menue()
plus()
minus()
mal()
geteilt()
programmEnde()

Man nennt die Programmierung auch Implementierung. Wir erkennen daran, dass der Benutzer einer Klasse nicht wissen muss, wie die Methoden (Fähigkeiten) programmiert worden sind. Es muss nur die zu erwartenden Eingaben tätigen. Für den Benutzer ist es unwichtig wie die Methoden ausgeben(), kuerzen() etc.. programmiert wurden sind. Natürlich ist nur das Ergebnis für den Benutzer wichtig. Dafür muss der Benutzer eine Reelle Eingabe tätigen, denn dafür wird er eine reelle Ausgabe bekommen falls der Syntax und die Semantik des Programms mit der Planung übereinstimmt. Deshalb sind die Implementierungen der Methoden für den Benutzer nicht relevant. Die Tatsache, dass die Implementierung unwesentlich für die Anwendung ist und die Kenntnisse der Schnittstelle vollkommen ausreicht, erleichtert die Verwendung fremder Programmteile ungemein. Diese einfache Wiederverwendbarkeit von Programmteilen, also Klassen, wird sich vor allem beim Erstellen grafischer Benutzeroberflächen deutlich zeigen.

Als Einführungsbeispiel habe ich die Obige Tabelle als Programm auf GitHub hochgeladen welches ihr hier kostenlos als Quelldatei laden und in eurer Entwicklungsumgebung kompilieren könnt.

Kommentare

Beliebte Posts aus diesem Blog

How can I transform a .jar file to a .bat file?

Ein Kleines Spiel mit Altersabfrage

Zufallszahlen und Verzweigungen in Python