Comment fermer une Application correctement

pour fermer un programme Java, nous devons considérer quel type d’application Java est-ce?, parce que la fin de L’application Java varie entre le programme Java de base normal pour balancer l’application GUI. En général, tous les programmes Java se terminent automatiquement une fois que tous les threads utilisateur créés par le programme ont terminé leur exécution, y compris le thread principal.,

Introduction

la JVM n’attend pas le thread démon, donc dès que le dernier thread utilisateur est terminé, le programme Java se termine. Si vous souhaitez fermer ou de résilier votre application java avant cela, votre seule option est d’utiliser System.exit(int status) ou Runtime.getRuntime().exit().

cette cause JVM à abandonner tous les threads et quitter immédiatement. Les hooks d’arrêt sont appelés pour permettre un effacement de dernière minute avant que la JVM ne se termine réellement., System.exit() accepte également un paramètre d’état int où une valeur non nulle dénote une exécution anormale et le résultat renvoyé par la commande java à l’appelant. Dans ce tutoriel java, nous verrons un exemple de fermeture du programme Java et de L’application Java Swing.
Swing est une boîte à outils de widget GUI pour Java. Il fait partie des Java Foundation Classes (JFC) D’Oracle – une API permettant de fournir une interface utilisateur graphique (GUI) pour les programmes Java. Swing a été développé pour fournir un ensemble de composants GUI plus sophistiqué que le précédent Abstract Window Toolkit (AWT)., JAVA fournit un riche ensemble de bibliothèques pour créer une Interface utilisateur graphique de manière indépendante de la plate-forme.

Java Swing

contrairement à AWT, Java Swing fournit des composants légers et indépendants de la plate-forme. Le javax.le paquet swing fournit des classes pour java swing API

Architecture MVC 2.1

L’architecture Swing API suit une architecture MVC vaguement basée de la manière suivante.

  • Un modèle représente les données du composant.
  • View représente la représentation visuelle des données du composant.,
  • Contrôleur prend l’entrée de l’utilisateur sur la vue et reflète les changements dans la Composante de données.
  • Le composant Swing a le modèle comme élément séparé et la vue et la partie Contrôleur sont massées dans les éléments de l’Interface utilisateur. En utilisant cette façon, Swing a une architecture enfichable look-and-feel.

chaque interface utilisateur prend en compte les trois aspects principaux suivants:

  • éléments de L’interface utilisateur : ce sont les éléments visuels de base que l’utilisateur voit et interagit éventuellement avec. GWT fournit une vaste liste d’éléments largement utilisés et communs variant du basique au complexe.,
  • Layouts: ils définissent comment les éléments de L’interface utilisateur doivent être organisés à l’écran et fournissent un aspect final à L’interface graphique (Graphical User Interface).
  • comportement: ce sont des événements qui se produisent lorsque l’utilisateur interagit avec des éléments de L’interface utilisateur.

2.2 Swing Features

Poids Léger – Les composants Swing sont indépendants de L’API du système d’exploitation natif car les contrôles de L’API Swing sont rendus principalement en utilisant du code JAVA pur au lieu des appels du système d’exploitation sous-jacents.,

  • Rich controls – Swing fournit un ensemble riche de contrôles avancés comme Tree, TabbedPane, slider, colorpicker, table controls.
  • hautement personnalisable-les contrôles Swing peuvent être personnalisés de manière très simple car l’apparence visuelle est indépendante de la représentation interne.
  • enfichable look-and-feel– SWING basé GUI application look and feel peut être modifié au moment de l’exécution en fonction des valeurs disponibles.

2.3 Installation

Populaire les Éditeurs Java:
Pour écrire vos programmes java, vous aurez besoin d’un éditeur de texte. Il existe dese encore plus sophistiqués disponibles sur le marché., Mais pour l’instant, vous pouvez considérer l’un des éléments suivants:

  • Bloc-notes: sur la machine Windows, vous pouvez utiliser n’importe quel éditeur de texte simple comme Bloc-notes TextPad.
  • NetBeans: est une Java open source et gratuit qui peut être téléchargé à partir de http://www.netbeans.org/index.html.
  • Eclipse: est également une java développé par la communauté open source eclipse et peut être téléchargé à partir dehttp://www.eclipse.org

prérequis
Cet exemple est développé sur Eclipse donc un Eclipse Eclipse compatible doit être installé sur le système.,
Nous avons également besoin de L’outil WindowBuilder à installer sur Eclipse ID pour la facilité du travail.

exemple de fermeture D’un programme Java à L’aide du système.exit ()

Voici un exemple de code de fermeture de programme Java en appelant System.méthode exit (). Rappelez-vous que l’argument non nul de la méthode exit () comme exit(1) dénote une terminaison anormale de L’application Java.

ApplicationExit.java

ce programme Java crée d’abord un Thread dans la méthode principale et le démarre, ce qui imprime « le thread utilisateur est en cours d’exécution”, puis le thread principal dort pendant 200 Milli de seconde., Jusque-là, l’autre thread utilisateur s’exécute et imprime mais une fois que le thread principal se réveille, il termine le programme en appelant exit() méthode de java.lang.System classe.

3.2 Comment fermer L’application Java swing à partir du programme

L’application Swing utilise principalementJFrame comme conteneur de niveau supérieur qui fournit deux options pour fermer l’application GUI swing à partir du code. La première option par défaut est EXIT_ON_CLOSE qui termine le programme Java swing GUI lorsque vous cliquez sur le bouton Fermer dans la fenêtre JFrame., Une autre option est DISPOSE_ON_CLOSE qui termine la JVM si la dernière fenêtre affichable est désactivée.

la différence entre EXIT_ON_CLOSE Et DISPOSE_ON_CLOSE est que si vous avez un thread non démon en cours d’exécution, il ne sera pas fermé en cas de DISPOSE_ON_CLOSE, tandis que EXIT_ON_CLOSE est en cours d’exécution. Exécutez l’exemple ci-dessous en un commentaire DISPOSE_ON_CLOSE dans votreE et vous pouvez voir le thread utilisateur s’exécuter même après avoir cliqué sur le bouton Fermer., Voici un exemple de code complet de fermeture de L’application Swing en Java.

ApplicationExit.java

3.3 points importants pour fermer ou terminer une application Java

  • System.exit()appelle en faitRuntime.getRuntime().exit() méthode.
  • argument Non nul pour exit() indique la fin anormale du programme Java.
  • Les hooks D’arrêt sont exécutés avant que le programme Java ne se termine réellement.
  • Il existe deux options pour fermer L’application Java Swing, l’une Est EXIT_ON_CLOSE et l’autre est DISPOSE_ON_CLOSE.,
  • DISPOSE_ON_CLOSE ne termine pas la JVM si un thread utilisateur est en cours d’exécution.
  • Vous pouvez également implémenter window listener pour implémenter votre mécanisme de fermeture en utilisant System.exit() dans L’application Swing.

c’est tout sur la façon de fermer ou de terminer le programme Java. Nous avons également vu un exemple de fermeture D’application Swing en Java et de différence entre EXIT_ON_CLOSE et DISPOSE_ON_CLOSE.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *