Angewandte Informatik

Universität Osnabrück , 7.5.2001

Dr. Ute Schmid

letzter Abgabetermin: 14.5.2001, 8:00 Uhr

Elmar Ludwig

Übungen zu Informatik B

Sommersemester 2001

Blatt 4

Aufgabe 1 (2 Punkte)

Erläutern Sie Ihrem Tutor die folgenden Begriffe:


Aufgabe 2 (5 Punkte)

Machen Sie sich mit dem in der Übung vorgestellen Programm argouml vertraut, und stellen Sie damit die Klassenhierarchie (inklusive Felder und Methoden) aus Aufgabe 3 von Blatt 3 unter Verwendung der UML-Notation grafisch dar (Klassendiagramm ). Sie sollten das Diagramm im Testat Ihrem Tutor erklären können.

Aufgabe 3 (5 Punkte)

Erläutern Sie Ihrem Tutor das Factory Design-Pattern. Implementieren Sie als Beispiel für das Factory-Modell eine Klasse NumberFactory, die folgende Methode enthalten soll:

public Number newNumber(String value) throws NumberFormatException

Diese Methode bekommt als Parameter eine Zahl als String und erzeugt daraus ein möglichst gut ,,passendes`` Number-Objekt (d.h. ein Objekt einer geeigneten Unterklasse von Number) mit diesem Wert. Testen Sie Ihre Klasse wieder mit einem kleinen Hauptprogramm.

Aufgabe 4 (8 Punkte)

Machen Sie sich mit der Klasse java.util.StringTokenizer vertraut, und implementieren Sie ein dem UNIX-Kommando cut ähnliches Java-Programm (zur Ein-/Ausgabe siehe auch Kapitel 3.5 im Skript). Das Programm sollte gemäß folgender Syntax aufgerufen werden:

java Cut [-f field-list] [-d delims]

field-list ist eine durch Kommata getrennte Liste von Feldnummern. Jedes Zeichen in dem an das Java-Programm übergebenen String delims wird als ein Feldtrenner betrachtet, z.B.:

$ java Cut -f '2,1,2' -d ':.'
eins.und:zwei.und:drei.und:
(CTRL-D)
und eins und

Ihr Programm muß auch mit fehlerhaften Optionen zurechtkommen können und dann eine entsprechende Fehlermeldung ausgeben.

Gesamtpunkte: 20



Elmar Ludwig
5/4/2001