Arbeitsblatt 1

Werbung
Technische Universität München
Fakultät für Informatik
Prof. Dr. Helmut Seidl
Michael Petter
Melanie Dietz
Raphael Geissler
SS 2005
Programmierpraktikum Java Entdecken
Arbeitsblatt 1
Grundlagen
1 Vererbung und Polymorphie
Verdeutlichen Sie (wenn möglich) anhand der nachfolgenden Codefragmenten die Begriffe
• Oberklasse
Unterklasse
• Einfachvererbung
Mehrfachvererbung
• abstrakte Klasse
• Überschreiben
Verbergen
• Überladen
Polymorphismus
• Klassenattribut
Objektattribut
• Klassenoperation
Objektoperation
public abstract class GraphicsObj {
private static int InstanceCounts = 0;
protected
int PosX ;
protected
int PosY ;
5
public static void addObject ( GraphicsObj object ) {
// ...
}
10
15
public static void removeObject ( GraphicsObj object ) {
// ...
}
public abstract void draw ( Color c ) {
// ...
1
}
public void draw () {
draw (new Color ( Color . BLACK ));
}
20
}
5
public class GraphicsRectangle extends GraphicsObj {
public void draw ( Color c)
{
// ...
}
}
public class GraphicsEllipse extends GraphicsObj {
protected int PosX ;
protected int PosY ;
10
public void draw ( Color c)
// ...
}
{
}
15
20
public class GraphicsCircle extends GraphicsEllipse {
public void draw ( Color c ) {
// ...
}
}
2 Arbeitsplatz einrichten
2.1 Entwicklungsumgebung
Vergewissern Sie sich, dass folgende Programme auf ihrem Arbeitsrechner installiert sind:
1. Sun Java SDK ab Version 1.5 (wird durch javac -version angezeigt) 1
2. eclipse 3.1M5 2
Richten Sie die Programme ansonsten ein (CD notfalls am Lehrstuhl).
2.2 Plugin Installation in Eclipse
Starten Sie Eclipse. Für Eclipse existiert ein eigenes Plugin, mit dem die SVN Verwaltung innerhalb von Eclipse ermöglicht wird. Um dieses Plugin zu installieren, sollten Sie zuerst überprüfen,
ob ihr Netzwerkzugang richtig konfiguriert ist.
1 http://java.sun.com
2 www.eclipse.org
2
Befindet sich ihr Arbeitsrechner hinter einem Proxyserver, müssen dessen Daten
im Menü Window→Preferences→Install/Update:Proxy Settings eintragen.
Proxy Server
Download und Installation
Erweitern Sie nun Eclipse über folgende Arbeitsschritte:
1. Gehen Sie ins Menü Help→Software Updates→Find and install.
2. Wählen Sie Search for new features to install aus.
3. Fügen Sie eine neue Remote Seite mit URL http://subclipse.tigris.org/update
hinzu
4. Bestätigen Sie ihre Auswahl mit Finish
5. Wählen Sie das Plugin Subclipse (ca. 2MB) aus und lassen sie es installieren.
Konfiguration
1. Gehen Sie in Window→Open Perspective→Other... und wählen Sie das SVN Repository
aus.
2. Rechtsklicken Sie in das neue Teilfenster und wählen Sie new→Repository location
3. Tragen Sie bei URL http://www2.in.tum.de/repos/progprakt/studenten/
und bei Username ihren Benutzernamen für den SVN Server ein.
Check out
Um das erste Beispiel herunterzuladen:
1. Öffnen Sie in der SVN Ansicht den Ordner templates/grundlagen.
2. Rechtsklicken sie darauf und wählen Sie Check out as Project
Beispiel ausführen Rechtsklicken Sie auf die Datei build.xml und wählen Sie Run→1 Ant
Build. Im Consolen-Fenster sollte die Ausgabe des Programms zusammen mit der Meldung
BUILD SUCCESSFUL erscheinen.
3 Threads
Bearbeiten Sie die in 2.2 erhaltenen Klassen Synch.java, Call.java und Callme.java so,
dass beim Ausführen des Ant target run folgende Ausgabe entsteht:
[hello]
[synchronized]
[world]
Verwenden sie dazu das Schlüsselwort synchronized auf beide mögliche Varianten.
3
4 Generische Klassen
Verändern Sie das folgende Beispiel so,
1. dass kein Klassencast vorkommt.
2. dass beim Einfügen eines String in die Liste ein Compilterfehler geworfen würde.
List myIntList = new LinkedList ();
myIntList . add (new Integer (0));
Integer x = ( Integer ) myIntList . iterator (). next ();
5 Literaturverzeichnis
5.1 Skript Informatik 1 (Prof. Seidl)
Sämtliche als Grundwissen angesehenen Techniken wurden in der Vorlesung Einführung in die
”
Informatik 1“ behandelt. Hier ist eine Übersicht der einzelnen Themen.
• Vererbung:
Kapitel 12, S.122
• Polymorphie:
Kapitel 13, S.134
• Generics:
Kapitel 13.2, S. 139
• Abstrakte Klassen:
Kapitel 14, S. 144
• Threads:
Kapitel 20, S. 190
5.2 Sun Java Homepage
Auf der Homepage von Java Sun 3 gibt es Informationen zu allen Bereichen von Java. Unter
anderem ist ein eigener Tutoriumsbereich 4 eingerichtet worden. Verschiedene Tutorials, die
sich mit den Grundlagen von Java beschäftigen, sind auf der von Sun bereitgestellten Entwickler
Homepage 5 zu finden. Weiterhin ist auch ein Tutorial6 für Generics vorhanden.
Siehe Einführung in die Informatik 1 von Prof. Seidl7 . Insbesondere ist das Buch Java ist auch eine Insel8 zu empfehlen.
Weitere Literaturangaben
3 http://java.sun.com
4 http://java.sun.com/learning/index.html
5
http://java.sun.com/developer/onlineTraining/essentials/
6 http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf
7
http://www2.informatik.tu-muenchen.de/lehre/vorlesungen/WS04/info1/
8 http://www.galileocomputing.de/openbook/javainsel4/
4
Herunterladen