Programmiertechnik 1 - AIN/1

Beispiel java.util.Formatter:

Für die formatierte Erzeugung von Zeichenfolgen haben wir früher bereits die Instanzmethoden printf(String, Object...) der Klasse java.io.PrintStream (Typ der Klassenvariablen System.out) und format(String, Object...) der Klasse String kennengelernt. Beide Methoden sind mit Hilfe der Klasse java.util.Formatter und deren Instanzmethode format(String, Object...) implementiert.

Formatter ist ein schönes Beispiel für sogenannte Lego-Software, denn Formatter ist dank der Verwendung von Object- und Interface-Referenzen sehr flexible mit Objekten verschiedener Klassen kombinierbar:

Das als Ziel verwendete Interface Appendable hat wiederum flexibel verwendbare Methoden dank Parametertyp CharSequence. Zwei Implementierungsklassen von Appendable kennen wir schon: es sind StringBuilder und java.io.PrintStream, der Typ von System.out. Im oben erwähnten String.format wird ein Formatter-Objekt mit StringBuilder-Objekt als Ziel erzeugt, in PrintStream.printf eines mit dem PrintStream-Objekt als Ziel.

Schauen Sie sich die genannten Methoden, Klassen und Interfaces in der API-Dokumentation an:



Prof. Dr. H. Drachenfels
Hochschule Konstanz
Letzte Änderung: 17.5.2022