1511程序讲解、辅导Java留学生程序

- 首页 >> Matlab编程

1511 - Objektorientiertes Programmieren mit Java Labor II 1
Testat - WS 2020 / 2021 - 7.1.2021
Testat-Regeln
Ziel des Testats ist das Erstellen eines lauffähigen Java-Programms unter BlueJ, das die
gegebene Aufgabenstellung korrekt löst.
Bearbeitungszeit 14:00 Uhr bis 17:00 Uhr
automatische Bereitstellung der Aufgabenstellung in OLAT 14:00 Uhr
spätester Einsendezeitpunkt der Lösungen - Abgabe in OLAT 17:00 Uhr
Eigenständigkeit der Lösung und Täuschungsversuche
 Die Aufgaben müssen von jedem allein ohne fremde Hilfe bearbeitet werden.
Als Hilfsmittel sind alle Unterlagen (Vorlesung und Labor) der Lehrveranstaltung Java-1 und
Java-2 sowie die Java-API erlaubt.
 Ist die Lösung (oder Teile von ihr) von anderen oder aus Büchern kopiert bzw. abgeschrieben,
stammt sie aus dem Internet oder wurde sie mit Hilfe eines Dritten erstellt, so gilt die Aufgabe
als nicht gelöst. Sie wird mit „nicht bestanden“ (Täuschungsversuch) bewertet.
 Um die Eigenständigkeit der Bearbeitung glaubhaft machen zu können, muss jeder Studierende
seine Lösung vollständig erklären können.
Dies wird bei Bedarf durch individuelle Befragungen überprüft werden. Diese Befragungen
werden voraussichtlich Ende Februar 2021 online durchgeführt. Die Termine werden rechtzeitig
bekannt gegeben.
 Findet während des Testats eine persönliche oder elektronische Kommunikation mit anderen
Personen statt oder wird gegen die unten genannten Regeln des Zoom-Meetings verstoßen, so
gilt dies sofort als Täuschungsversuch: In diesem Fall ist für diesen Studierenden das Testat
sofort beendet und wird mit „nicht bestanden“ (Täuschungsversuch) bewertet.
1511 - Objektorientiertes Programmieren mit Java Labor II 2
Entwicklungsumgebung und Quellcode
 Das Java-Projekt muss zwingend mit BlueJ (mindestens Version 4.2.0) und Java SE 7 oder
höher realisiert werden. Dabei muss zwingend die deutsch- oder englischsprachige Version von
BlueJ verwendet werden.
Es muss unbedingt folgender Name für das BlueJ-Projekt verwendet werden:
Java2_Nachname_Matrikelnummer
Hierbei müssen Sie Matrikelnummer durch Ihre eigene Matrikelnummer und Nachname durch
Ihren eigenen Nachnamen ersetzen.
Alle Quellcode-Dateien des Projekts müssen am Dateianfang folgende Informationen als
Kommentar enthalten:
Java2-Testat
Nachname, Vorname, Matrikelnummer
sowie den Text
Hiermit erkläre ich, dass ich die Testatregeln eingehalten und insbesondere meine Lösung der
Testataufgabe selbständig ohne fremde Hilfe erstellt habe.
Hierbei müssen Sie Matrikelnummer durch Ihre eigene Matrikelnummer, Nachname und
Vorname durch Ihren eigenen Namen ersetzen.
Durchführung des Testats mit OLAT
 Am Testattermin muss jeder Studierende die Aufgabenstellung zur festgelegten Testatuhrzeit
mit Hilfe des Aufgabentools von OLAT elektronisch herunterladen und die Bearbeitungszeit von
180 Minuten beginnt.
OLAT-Ordner: > Testat
 Spätestens bis zum Ende der offiziellen Bearbeitungszeit muss jeder Studierende seine Lösung
als Einsendeaufgabe mit Hilfe des Aufgabentools von OLAT elektronisch abgegeben haben.
OLAT-Ordner: > Testat
 Nach der Abgabe In OLAT können die Lösungen bis zum offiziellen Abgabezeitpunkt
überarbeitet und nochmals in OLAT abgegeben werden. Danach sind keinerlei Abgaben und
Änderungen mehr möglich.
Form der Abgabe in OLAT
 eine einzige ZIP-Datei (andere Kompressionsformate sind nicht erlaubt) mit Ihrem kompletten
BlueJ-Projekt
Name der Datei:
Java2_Nachname_Matrikelnummer.zip
Hierbei müssen Sie Matrikelnummer durch Ihre eigene Matrikelnummer und Nachname durch
Ihren eigenen Nachnamen ersetzen.
1511 - Objektorientiertes Programmieren mit Java Labor II 3
Unterstützung des Testats mit Zoom
Während des gesamten Testat müssen Sie permanent in dem zum Testat gehörenden ZoomMeeting
und insbesondere in dem für Sie individuell eingerichteten Breakout-Room online sein.
Ein vorzeitiges Beenden des Testats ist nicht erlaubt.
Sie müssen sich unbedingt mit Ihrem richtigen, kompletten Vor- und Nachnamen in Zoom anmelden.
Es sind keine Pseudonyme oder Abkürzungen erlaubt.
In diesem Breakout-Room muss Ihr Mikrofon permanent eingeschaltet sein und Sie müssen
permanent Ihren kompletten Bildschirm freigeben.
Außer BlueJ, der Aufgabenstellung, dem OLAT-Kurs, der Java-API sowie den Vorlesungsunterlagen
dürfen kein weiteren Programme geöffnet sein.
So überprüfen wir stichprobenartig, dass Sie wirklich allein und ohne fremde Hilfe arbeiten.
Die Kamerafunktion wird nicht benötigt.
Sie verpflichten sich bis zum Ende des Testats in Ihrer Breakout-Session zu bleiben. Sollten Sie Ihre
Breakout-Session oder das Zoom-Meeting vorzeitig verlassen, so bedeutet dies für Sie automatisch
das Ende des Testats. Sie können somit keine Lösung abgebeben und haben nicht bestanden.
Verstoßen Sie gegen diese Regeln, so gilt dies sofort als Täuschungsversuch: In diesem Fall ist für
Sie das Testat sofort beendet und wird mit „nicht bestanden“ (Täuschungsversuch) bewertet.
Bewertung des Testats
Die gesamte Aufgabenstellung muss in wesentlichen Teilen erfolgreich gelöst sein.
Dies bedeutet konkret:
 Der Aufgabenteil 1 muss auf jeden Fall vollständig korrekt gelöst sein.
 Für die Aufgabenteile 2 und 3 gilt:
Entweder
- Nur einer der beiden Aufgabenteile 2 oder 3 muss bearbeitet, muss dann aber vollkommen
korrekt gelöst sein.
oder aber
- Beide Aufgabenteile 2 und 3 müssen bearbeitet, aber nur jeweils „einigermaßen“ korrekt
gelöst sein.
 Kleine „Schönheitsfehler“ sind erlaubt.
1511 - Objektorientiertes Programmieren mit Java Labor II 4
Wichtige Hinweise zur Bewertung
 Das Programm muss sich ohne Fehler compilieren lassen und muss ohne Modifikation lauffähig
sein. Andernfalls gilt das Testat sofort als nicht bestanden.
 Erweitern Sie deshalb Ihren Quellcode schrittweise und testen Sie ihn nach jedem Schritt
sorgfältig . Hierzu gehört als Grundvoraussetzung, dass sich der Code compilieren und sinnvoll
ausführen lässt.
 Auskommentierte Codefragmente werden generell nicht bewertet.
 Sollte das Programm Codefragmente enthalten, die keinen Bezug zur Aufgabenstellung haben,
so kann dies zu einer schlechteren Bewertung führen.
1511 - Objektorientiertes Programmieren mit Java Labor II 5
Aufgabe: Verschieben eines Rechtecks
Ziel ist die Erstellung eines JAVA-Programms in BlueJ, das eine rote Ellipse anzeigt, die
verschoben und vergrößert werden kann. Dabei auftretende Fehlerfälle werden durch Exceptions
abgefangen.
Mit Hilfe der Textfelder und des Verschiebe-Buttons auf der rechten Seite wird die Verschiebung
bestimmt und angestoßen.
Mit Hilfe des Sliders auf der linken Seite wird die Größe der Ellipse verändert.
Mit Hilfe des Reset-Buttons am unterer Fensterrand wird die Zeichnung auf ihren Ausgangszustand
zurückgesetzt.
Am Ende des Testats soll die Bedienoberfläche folgendermaßen aussehen:
Das Programm muss folgende Klassen verwenden. Die Klassenamen sind verpflichtend.
1511 - Objektorientiertes Programmieren mit Java Labor II 6
Aufgabenteil 1 - Grundversion
Zunächst soll eine einfache GUI ohne Slider entwickelt werden.
 Die Klasse Test enthält die main()-Methode, die ein Objekt der Klasse Fenster erzeugt.
 Nach dem Start des Programms erscheint ein Fenster der Klasse Fenster mit dem Titel
„Testat“ gemäß der obigen Abbildung
Exakt in der Mitte befindet sich eine Zeichenfläche mit einer roten Ellipse.
Auf der rechten Seite sind zwei Textfelder (jeweils mit Überschiften) und der Verschiebe-Button.
Unten enthält das Fenster einen Reset-Button, mit dem die Zeichnung auf ihren
Ausgangszustand zurückgesetzt werden kann
Das Fenster soll in seiner Größe veränderbar sein und seine Größe soll sich der Größe der
Zeichenfläche anpassen (resizable und pack).
 Die Zeichenfläche in der Mitte wird durch die Klasse Zeichnung beschrieben.
Die Zeichenfläche soll eine Ausgangsgröße von genau 600x 400 Pixeln und die Farbe (R,G,B)
= (100, 150, 200) haben.
 Die Klasse Ellipse modelliert die Ellipse. Diese kann sich selbst zeichnen und verwaltet ihre
Datenfelder. Außerdem enthält sie Methoden, um die Ellipse beliebig zu verschieben und ihre
Größe zu ändern.
Die ursprüngliche Größe der roten Ellipse beträgt 60 x 120 Pixel. Die Höhe ist also doppelt so
groß wie die Breite.
1511 - Objektorientiertes Programmieren mit Java Labor II 7
Die Ellipse liegt zu Beginn genau in der Mitte der Zeichenfläche. Die Mittelpunkte von Ellipse und
Zeichenfläche sind also identisch.
 Die Ellipse kann beliebig verschoben werden.
Die Größe der Verschiebung in horizontaler und vertikaler Richtung wird in den beiden
Textfeldern durch Eingabe von Integer-Werten festgelegt und durch Klicken auf den VerschiebeButton
ausgeführt.
Positive Eingabewerte bedeuten eine Verschiebung nach rechts bzw. nach oben.
Zur Kontrolle sollen bei jeder Bewegung der aktuelle Mittelpunkt der Ellipse und die Werte der
Verschiebung in horizontaler und vertikale Richtung auf der Konsole ausgegeben werden.
 Werden in den Textfeldern statt der geforderten Integer-Werte fälschlicher Weise Buchstaben,
Sonderzeichen oder Gleitpunktzahlen eingegeben, so wird eine NumberFormatException der
Java-Klassenbibliothek geworfen.
Diese muss in der Klasse Fenster geeignet abgefangen und behandelt werden. Im Fehlerfall
erscheint folgende Dialogbox:
Implementieren Sie dieses Szenario und testen Sie es ausführlich. Testen Sie Ihr Programm auch,
indem Sie die Größe des Fensters mit der Maus verändern.
1511 - Objektorientiertes Programmieren mit Java Labor II 8
Aufgabenteil 2 - Slider
Mit Hilfe des Sliders auf der linken Seite des Fensters kann die Größe der Ellipse verändert werden.
Dabei bestimmt der Wert des Slider die Breite der Ellipse. Die Höhe ist doppelt so groß wie die
Breite. Somit bleibt die Form de Ellipse unverändert.
Der minimale Wert des Sliders beträgt 20, der maximale Wert 100. Der Startwert (Ausganszustand)
liegt bei 60.
Als Einteilung sollen die Werte 20, 25, 30. usw. angezeigt werden. Die Beschriftung soll bei 20, 30,
40 usw. erfolgen.
Zur Kontrolle soll bei jeder Änderung die aktuelle Breite der Ellipse und ihr Mittelpunkt auf der
Konsole ausgeben werden.
Beim Drücken des Reset-Buttons wird der Slider auf seinen Ausgangszustand zurückgesetzt.
Implementieren Sie dieses Szenario und testen Sie es ausführlich.
1511 - Objektorientiertes Programmieren mit Java Labor II 9
Aufgabenteil 2 - VerschiebungsException
Die Größe der möglichen Verschiebung der Ellipse soll begrenzt und überwacht werden.
Es sollen nur Verschiebungen im Bereich von -20 bis +20 Pixel in horizontaler bzw. vertikaler
Richtung möglich sein.
Wird in den Textfeldern ein Wert außerhalt dieses Bereichs eingegeben, so soll eine
VerschiebungsException geworfen werden. Diese muss in der Klasse Fenster geeignet
abgefangen und behandelt werden.
Im Fehlerfall erscheint folgende Dialogbox:
VerschiebungsException ist eine selbst geschrieben checked Exception und wird durch die
Klasse VerschiebungsException implementiert.
Implementieren Sie dieses Szenario und testen Sie es ausführlich.
Viel Erfolg !

站长地图