In einer Java-Swing-Anwendung, was ist der Unterschied zwischen den folgenden Operationen? Wann würde ich es vorziehen, eines über dem anderen zu verwenden?Java Swing schließt ein Fenster mit setDefaultCloseOperation Vs. addWindowListener
Ich habe diese beiden in verschiedenen Beispielen zu sehen über das Internet verstreut:
// Have the window exit on close
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- ODER -
// Set up a window listener to exit on close
mainFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent) {
System.exit(0);
}
});
Der zweite Ansatz scheint so viel mehr Code zu sein, ich Ich wundere mich, warum ich es so weit verbreitet sehe. Hat dieser Ansatz gegenüber dem ersten einen Vorteil?
Mit der zweiten Möglichkeit können Sie zusätzliche Dinge tun: Ressourcen bereinigen, Material sparen, die Polizei kontaktieren, was auch immer. Siehe: http://stackoverflow.com/questions/6084039/create-custom-operation-for-setdefaultcloseoperation/6084220 – Berger