Development Class Java

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class DebugWinTest extends JFrame implements ActionListener {
  private JButton aButton = new JButton("button");
  private DebugWin dw = new DebugWin();
  public DebugWinTest() {
    setTitle("DebugWinTest");
    setSize(100, 100);
    addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        System.exit(0);
      }
    });
    JPanel pane = new JPanel();
    pane.add(aButton);
    aButton.addActionListener(this);
    getContentPane().add(pane);
  }
  public void actionPerformed(ActionEvent evt) {
    dw.print("Event = " + evt);
  }
  public static void main(String[] args) {
    JFrame f = new DebugWinTest();
    f.show();
  }
  class DebugWin extends JFrame {
    private JTextArea output = new JTextArea();
    public void print(Object ob) {
      output.append("\n" + ob);
    }
    public DebugWin() {
      setTitle("DebugWin");
      output.setEditable(false);
      output.setText("[DebugWin]");
      getContentPane().add(new JScrollPane(output), "Center");
      setSize(300, 200);
      setLocation(200, 200);
      addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
          setVisible(false);
        }
      });
      show();
    }
  }
}