====== Hallo Welt mit AWT ====== Speichere das folgende Programm auf deinem Computer, Compiliere es und führe es aus. import java.awt.*; import java.awt.event.*; public class HalloWelt extends Frame { // Das Button Objekt Button button = new Button("Schaltfläche"); // Konstruktor public HalloWelt () { setTitle("Hallo Welt"); // Interaktionen mit dem Fenster behandeln addWindowListener(new TestWindowListener()); // Einstellungen für den Button button.setForeground(Color.RED); // Vordergrundfarbe auf "rot" setzen button.setBackground(Color.WHITE); // Hintergrundfarbe auf "weiß" setzen // Interaktionen mit dem Button behandeln button.addActionListener(new TestActionListener()); // EventListener für Schaltfläche hinzufügen add(button); // Schaltfläche zum Fenster hinzufügen pack(); // Fenstergröße auf die benötigte Größe // "zusammenpacken" setVisible(true); } class TestWindowListener extends WindowAdapter { public void windowClosing(WindowEvent e) { e.getWindow().dispose(); System.exit(0); } } class TestActionListener implements ActionListener { public void actionPerformed(ActionEvent e) { System.out.println("Schaltfläche wurde gedrückt"); } } public static void main (String args[]) { new HalloWelt(); } } ===== Arbeitsaufträge ===== * Was bedeutet es dass die Klasse "HalloWelt" als "extends Frame" deklariert wird? welche Rolle spielt der Begriff der Vererbung dabei? * Was passiert, wenn man die Zeile ''addWindowListener(new TestWindowListener());'' auskommentiert? Erkläre das Verhaöten des Programms ohne diese Zeile - und umgekehrt die Funktion des ''WindowListeners''.