OTterresti la possibilità di avere una classe da manipolare singolarmente, da poter modellare e, soprattutto, da poter utilizzare come se fosse un JInternalFrame. In effetti è un JInternalFrame, quindi puoi far riferimento ad essa e a tutti i metodi della classe JInternalFrame.

La programmazione Object Oriented si basa proprio su questo.

Se tu procedi nel tuo modo, ogni volta che dovrai aggiungere qualcosa al tuo JInternalFrame dovrai agire sull'oggetto appena creato, mentre se hai una classe, la puoi manipolare come vuoi. Ti faccio un esempio. Supponiamo che tu voglia aggiungere dei pulsanti che dovranno agire sul JInternalFrame stesso:
codice:
public class MioFrame extends JInternalFrame implements ActionListener {
   private JButton jb;
   public MioFrame() {
      jb = new JButton("Pulsante");
      jb.addActionListener(this);
      getContentPane().add(jb);
   }

   public void actionPerformed(ActionEvent ae) {
      ... // Faccio ciò che devo fare col pulsante
   }
}
In questo modo, la tua finestra rimane un oggetto a se stante. Se, invece, procedi con la tua situazione, dovrai creare esternamente i pulsanti, aggiungerli, creare esternamente degli ActionListener per gestirli, e tutto ciò che riguarda solo il JInternalFrame lo dovrai creare e gestire all'esterno. Questo si traduce in possibilità di interferenze da parte di oggetti esterni.


Ciao.