¨Ubungsblatt 3

Werbung
Programmieren 2 (MI)
Sven Eric Panitz
Übungsblatt 3
(10. April 2008)
Aufgabe 1 Legen Sie die Klassen aus Ihrer Lösung des letzten Übungsblattes in ein
Paket, das Sie als Entwickler eindeutig identifiziert.
Aufgabe 2 Schreiben Sie für Ihre Klassen aus dem zweiten Übungsblatt eine Methode
public boolean equals(Object that).
Aufgabe 3 Lassen Sie jetzt zusätzlich die Klasse GeometricObject folgende Schnittstelle implementieren:
1
2
3
4
5
Paintable.java
package name.panitz.javaMI;
import java.awt.Graphics;
public interface Paintable{
public void paintMeTo(Graphics g);
}
Implementieren Sie in allen Unterklassen von GeometricObject die Methode paintMe.
Aufgabe 4 Erzeugen Sie in einer Testmethode Objekte der folgenden Klasse:
1
2
3
4
ShowPaintable.java
package name.panitz.javaMI;
import java.awt.Graphics;
import java.awt.Dimension;
import javax.swing.*;
5
6
7
public class ShowPaintable extends JPanel{
Paintable p;
8
9
10
11
12
13
14
15
@Override public Dimension getPreferredSize(){
return new Dimension(400,300);
}
@Override public void paintComponent(Graphics g){
super.paintComponent(g);
p.paintMeTo(g);
}
10. April 2008
(Seite 1)
Übungsblatt 3
Programmieren 2 (MI)
public ShowPaintable(Paintable p){
this.p=p;
JFrame f = new JFrame();
f.add(this);
f.pack();
f.setVisible(true);
}
16
17
18
19
20
21
22
23
Sven Eric Panitz
}
Übergeben Sie dem Konstruktor dabei jeweils unterschiedliche Objekte der Klassen, die die Schnittstelle Paintable implementieren. Also z.B.:
new ShowPaintable(new Circle(40,new Vertex(100,40)));.
10. April 2008
(Seite 2)
Übungsblatt 3
Herunterladen