Swing example with two buttons

import java.awt.*;
import java.applet.*;
import javax.swing.*; // Using swing
import java.awt.event.*; // using listeners

public class SecondSwing extends JPanel {
    private JLabel label;
    private JButton button1;
    private JButton button2;
    // the counter for button clicks
    int count = 0;

    // this is an application: need main
    public static void main(String[] args) {

	// setting up the frame, give it a title
	JFrame fr = new JFrame("First swing example");
	fr.setSize(500,100);
	fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

	// get the frame's content pane:
	Container cp = fr.getContentPane();

	// create and initialize a SecondSwing object
	SecondSwing ss = new SecondSwing();
	ss.init();

	// add the object to the frame
	cp.add(ss);
	
	// display the frame (after the object is added)
	fr.setVisible(true);
    }

    // the method initializes the FirstSwing object
    public void init() {
	// note: label is now instance variable:
	label = new JLabel();
	putLabelText();
	add(label);

	// adding a button and a button listener
	button1 = new JButton("Add 1 to the counter");
	// add the listener to the button
	button1.addActionListener(new ButtonListener(this,1));
	// add the button to SecondSwing:
	add(button1);

	// adding a button and a button listener
	button2 = new JButton("Subtract 1 from the counter");
	// add the listener to the button
	button2.addActionListener(new ButtonListener(this,-1));
	// add the button to SecondSwing:
	add(button2);	
    }

    public void putLabelText() {
	label.setText("counter = " + count);
    }

    public void update(int increment) {
	count += increment;
	putLabelText();
    }
}


class ButtonListener implements ActionListener {
    private SecondSwing swing;
    int increment;

    public ButtonListener(SecondSwing swing, int i) {
	this.swing = swing; // save a reference to the object
	increment = i;
    }

    // for any action on the button
    public void actionPerformed(ActionEvent e) {
	swing.update(increment);
    }
}

This is an example from CSci 1211 course.