import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;

public class Application1 extends JFrame 
{
private Button endProgram;
private Button message;
public Application1()
{
super("Setting up and using GUI components ");
ButtonHandler handler = new ButtonHandler();
Container cat = getContentPane();
cat.setLayout(new FlowLayout());
endProgram = new Button("Test Button");
endProgram.addActionListener(handler);
cat.add(endProgram);
message = new Button("Click HERE to see Message");
message.addActionListener(handler);
cat.add(message);
setSize(800,600);
setVisible(true);
}
public class ButtonHandler implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if(e.getSource()== endProgram)
System.exit(0);
else
if(e.getSource() == message)
JOptionPane.showMessageDialog(null,"test output box");
}
}

public static void main(String[] args)
{
Application1 app = new Application1();
}
}