10 Wiederholung der Grundelemente in Java 1. Schleifen Objektorientierte Programmierung OOP Objektorientierte Programmierung (OOP) mit Java 2. Plattformunabhängigkeit 3. BankKonto 4. KontoKorrent 10 Wiederholung der Grundelemente in Java 5. KontenArray Aufgaben © Prof. Dr. Rolf Dornberger 10 Wiederholung der Grundelemente in Java OOP: 10 Wiederholung der Grundelemente in Java 22.09.2010 2 Aufgabe 1: Schleifen Wiederholung: – Objektorientierte Programmierung; Rolf Dornberger; http://www.hsw.fhso.ch/dornberger/Documents/Lectures/oop.html; Fachhochschule Solothurn Nordwestschweiz; 2004-2006. • In Java können for-Schleifen auch mehrere Zählvariablen beinhalten. Die Variablen werden dann alle zuerst definiert und initialisiert, danach wird deren Zulässigkeit für einen weiteren Schleifendurchlauf getestet und dann erfolgt ein Update der Variablenwerte. Betrachten Sie nun nachfolgendes Programm. public class For1x { public static void main (String[] args) { for (int i=1, j=4; (i<=4) || (j>=-4); i++, j-=2) { System.out.println(i + " / " + j); } } Kapitel: – 1 Übersicht und Einleitung – 2 JDK/SDK/JRE und Java Entwicklungswerkzeuge } – 3 Hauptbestandteile von Java: Token, Kommentare, Datentypen, Operatoren – 4 Hauptbestandteile von Java: Datenfelder, Parameterübergabe, Casting – 5 Elementare Anweisungen und Bedingungen – 6 Schleifen – 7 Methoden, Algorithmen und Rekursion in Java – 8 Klassen, Objekte, Methoden, Vererbung, Konstruktoren © Prof. Dr. Rolf Dornberger OOP: 10 Wiederholung der Grundelemente in Java 22.09.2010 3 1. Was gibt das Programm aus? 2. Wie müssen Sie die for-Schleife ändern, damit die Ausgabereihenfolge umgekehrt ist, also die letzte Zeile zuerst und die erste Zeile zuletzt © Prof. ausgegeben Dr. Rolf Dornberger werden? OOP: 10 Wiederholung der Grundelemente in Java 22.09.2010 3. Was passiert, wenn Sie folgende Zeile anstelle der ursprünglichen for- 4 Aufgabe 3: BankKonto Aufgabe 2: Plattformunabhängigkeit • Wie ist die Plattformunabhängigkeit in Java realisiert? Erstellen Sie die Klasse BankKonto mit den Attributen betrag und inhaber und der Methode getInfo. Die Methode schreibt den Namen und den Kontostand auf den Bildschirm. Erklären Sie kurz. a) Zeichnen Sie dazu zuerst ein Klassendiagramm. Ordnen Sie dabei die Begriffe Source-, Byte- und Maschinencode ein. b) Programmieren Sie danach die Klasse (BankKonto.java). Zusätzlich soll diese Klasse die main-Methode enthalten. c) Zeichnen Sie die Objektdiagramme für das Objekt KontoMeier mit dem Namen „Meier“, der 25‘000.-- besitzt, und für das Objekt KontoMoser mit dem Namen „Moser“, der 10‘000.-besitzt. d) Schreiben Sie in die main-Methode der Klasse BankKonto die Code-Zeilen, mit denen diese Objekte aus der Klasse BankKonto gebildet und ihnen die entsprechenden Attributwerte zugewiesen werden. e) Führen Sie für jedes der beiden Objekte (KontoMoser und KontoMeier) die Methode getInfo() in der main-Methode aus. © Prof. Dr. Rolf Dornberger OOP: 10 Wiederholung der Grundelemente in Java 22.09.2010 5 Aufgabe 4: KontoKorrent © Prof. Dr. Rolf Dornberger OOP: 10 Wiederholung der Grundelemente in Java 22.09.2010 6 22.09.2010 8 Aufgabe 5: KontenArray • Erstellen Sie eine neue Klasse KontenArray. • Erstellen Sie eine neue Klasse KontoKorrent, welche von BankKonto erbt. • Die Klasse hat wieder die Attribute betrag und inhaber, diesmal sind sie aber private. • Die neue Klasse hat einen Konstruktor, mit dem direkt der Name des Inhabers sowie der Kontostand gesetzt werden können. • Fügen Sie für die Attribute die get- und set-Methoden hinzu. • Fügen Sie der Klasse noch die Methode einzahlen zu. Mit dieser Methode soll ein Betrag b übergeben werden können, welcher auf den bestehenden Betrag addiert wird. • Erstellen Sie in der main-Methode einen Konto-Array mit 5 Positionen. • Erstellen Sie in der main-Methode einen String-Array mit 5 Namen, dem Sie 5 willkürlich gewählte Namen zuweisen. • Fügen Sie der Klasse die Methode auszahlen zu. Diese Methode subtrahiert den übergebenen Betrag b vom Kontobetrag. • In einer for-Schleife sollen nun alle Konten mit inhaber und betrag im KontenArray erstellt werden. Weisen Sie dabei betrag einen Zufallswert zwischen 0 und 1000 zu. • Ändern Sie die Methode auszahlen so ab, dass nicht ausbezahlt werden kann, wenn der Betrag danach unter 0 wäre. • In einer weiteren Schleife sollen nun alle Konten mit den Attributen ausgegeben werden. Geben Sie auch den Array-Index als Kontonummer aus. • Erstellen Sie in der main-Methode zwei KontoKorrent-Objekte und testen Sie den Konstruktor und die Methoden auszahlen und einzahlen. © Prof. Dr. Rolf Dornberger OOP: 10 Wiederholung der Grundelemente in Java 22.09.2010 7 © Prof. Dr. Rolf Dornberger OOP: 10 Wiederholung der Grundelemente in Java