Javax Swing Java by API

import java.awt.Component;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Icon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class MainClass extends JPanel  implements ActionListener {
  public MainClass() {
 
      JButton jb = new JButton(new MyIcon()); 
      jb.setActionCommand("France"); 
      jb.addActionListener(this);
      add(jb);
    } 
   
    // Show text when user presses ENTER. 
    public void actionPerformed(ActionEvent ae) { 
      System.out.println(ae); 
    } 
  public static void main(String[] args) {
    JFrame frame = new JFrame();
    frame.getContentPane().add(new MainClass());
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(200, 200);
    frame.setVisible(true);
  }
}
class MyIcon implements Icon {
  public int getIconWidth() {
    return 32;
  }
  public int getIconHeight() {
    return 32;
  }
  public void paintIcon(Component c, Graphics g, int x, int y) {
    g.drawString("rntsoft.com", 0, 20);
  }
}