>>86 とはちょっと別系統の発展系で、
BをMainクラスに合体させる形も考えられる

public class Main extends JFrame implements ActionListener { //BがMainに合体!
 Main() {
  setSize(200, 200);
  setLocationRelativeTo(null);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  JPanel pnl = new JPanel();
  JButton btn = new JButton("押して・・・・");
  pnl.add(btn);
  Container contentPane = getContentPane();
  contentPane.add(pnl, BorderLayout.CNETER);
 
  
  btn.addActionListener(this);//Aモナーbtn
 }
 public static void main(String[] args) {
  Main ma = new Main();//@肩紐生成はここにふくまれることになる
  ma.setVisible(true);
 }
 public void actionPerformed(ActionEvent e) {
  System.out.println("あ〜ん");
 }
}