Javax Swing Java by API

import java.awt.BorderLayout;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSplitPane;
public class MainClass {
  public static void main(String args[]) throws Exception {
    JFrame frame = new JFrame("Property Split");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
    splitPane.setTopComponent(new JLabel("www.rntsoft.com"));
    splitPane.setBottomComponent(new JLabel("www.rntsoft.com"));
    PropertyChangeListener propertyChangeListener =
        new PropertyChangeListener() {
      public void propertyChange (PropertyChangeEvent changeEvent) {
        JSplitPane sourceSplitPane = (JSplitPane)changeEvent.getSource();
        String propertyName = changeEvent.getPropertyName();
        if (propertyName.equals(
            JSplitPane.LAST_DIVIDER_LOCATION_PROPERTY)) {
          int current = sourceSplitPane.getDividerLocation();
          System.out.println ("Current: " + current);
          Integer last = (Integer)changeEvent.getNewValue();
          System.out.println ("Last: " + last);
          Integer priorLast = (Integer)changeEvent.getOldValue();
          System.out.println ("Prior last: " + priorLast);
        }
      }
    };
    // Attach listener
    splitPane.addPropertyChangeListener(propertyChangeListener);
    frame.add(splitPane, BorderLayout.CENTER);
    frame.setSize(300, 150);
    frame.setVisible(true);
  }
}