Was ist der Unterschied zwischen AWT und Swing in Java?

Inhaltsverzeichnis:

Anonim

Die Hauptunterschied zwischen AWT und Swing in Java ist, dass die AWT ist Javas ursprüngliches plattformabhängiges Windowing-, Grafik- und User-Interface-Widget-Toolkit, während Swing ein GUI-Widget-Toolkit für Java ist, das eine Erweiterung von AWT ist.

Java ist eine allgemeine Programmiersprache auf hoher Ebene, die objektorientierte Programmierung, Multithreading, Plattformunabhängigkeit und viele andere Funktionen unterstützt. Der Programmierer kann eine Vielzahl von Anwendungen schreiben, einschließlich Desktop, Web, Mobile, Bildverarbeitung usw. unter Verwendung der Java-Sprache. Es bietet Toolkits zum Erstellen umfangreicher grafischer Benutzeroberflächen (GUI). AWT und Swing sind zwei davon.

AWT, GUI, Java, Swing

Was ist eine GUI?

GUI steht für Grafische Benutzeroberfläche. Es ist eine Schnittstelle, die es den Benutzern ermöglicht, eine Anwendung zu bedienen und die erforderlichen Aufgaben auszuführen. Auch eine GUI besteht aus verschiedenen Komponenten. Fenster, Schaltflächen, Optionsfelder, Kontrollkästchen, Beschriftungen, Dropdown-Listen, Textfelder, Kombinationsfelder sind einige GUI-Komponenten. Diese Komponenten können Ereignisse auslösen. Beispielsweise öffnet sich nach dem Klicken auf eine Schaltfläche eine neue Seite, oder der Benutzer kann die Registrierungsdaten eingeben und auf die Schaltfläche "Senden" klicken. Die meisten Anwendungen verfügen über eine GUI, die es dem Benutzer ermöglicht, mit der Anwendung zu kommunizieren.

Was ist AWT

AWT steht für Abstraktes Fenster-Toolkit. Es ist eine API zur Entwicklung von GUI- oder Windows-basierten Anwendungen in Java. Es erfordert ein natives OS-Objekt, um die Funktionalitäten zu implementieren. Außerdem sind AWT-Komponenten schwergewichtig und benötigen mehr Speicherplatz. Außerdem nehmen sie einige Zeit in Anspruch. Außerdem muss der Programmierer das Paket javax.awt importieren, um eine AWT-basierte GUI zu entwickeln. Schaltflächen, Bildlaufleisten, Textfelder, Listen, Dialoge und Bedienfelder sind einige AWT-Komponenten. Nach dem Erstellen von Objekten werden diese in einen Container gelegt. Außerdem bietet es den erforderlichen Platz zum Laden der Komponenten. Normalerweise kann die AWT-Anwendung in einem Betriebssystem in einem anderen Betriebssystem anders aussehen.

Was ist Swing

Swing ist ein GUI-Widget-Toolkit für Java. Es basiert auf der AWT-API. Außerdem ist es Teil der Java Foundation Classes (JFC) von Oracle. Darüber hinaus bietet Swing grundlegende Komponenten wie Beschriftungen, Textfelder, Schaltflächen usw. sowie erweiterte Komponenten wie Fenster mit Registerkarten, Tabellen und Bäume. Daher bietet Swing anspruchsvollere Komponenten als AWT. Hier muss der Programmierer das Paket javax.swing importieren, um eine Swing-Anwendung zu schreiben. Dieses Paket bietet eine Reihe von Klassen wie JButton, JTable, JList, JTextArea und JCheckBox.

Abbildung 1: Einfache Java Swing-Anwendung

Swing ist plattformunabhängig und seine Komponenten sind leicht. Außerdem benötigen die Komponenten minimalen Speicherplatz. Daher werden Swing-Anwendungen viel schneller ausgeführt. Ein gängiges Entwurfsmuster in der Entwicklung ist das Model, View, Controller (MVC)-Muster. Swing folgt diesem Muster. Es hilft, den Code leicht zu pflegen.

Unterschied zwischen AWT und Swing

Definition

AWT ist eine Sammlung von GUI-Komponenten (Widgets) und anderen verwandten Diensten, die für die GUI-Programmierung in Java erforderlich sind. Swing ist ein Teil der Java Foundation Classes (JFC), der verwendet wird, um Java-basierte Front-End-GUI-Anwendungen zu erstellen. Daher erklärt dies den Hauptunterschied zwischen AWT und Swing in Java.

Typ

AWT-Komponenten sind schwer, während Swing-Komponenten leicht sind.

Plattformabhängigkeit

Ein weiterer wesentlicher Unterschied zwischen AWT und Swing in Java besteht darin, dass AWT plattformabhängig ist, während Swing plattformunabhängig ist.

Anzeige

Komponenten

Außerdem verfügt Swing über fortschrittlichere Komponenten als AWT.

Geschwindigkeit

Außerdem ist die Ausführung von AWT langsamer. Swing wird jedoch schneller ausgeführt.

MVC

AWT unterstützt kein MVC-Muster, während Swing MVC-Muster unterstützt. Dies ist ein weiterer Unterschied zwischen AWT und Swing.

Speicherplatz

Paket

Der Programmierer muss das Paket javax.awt importieren, um eine AWT-basierte GUI zu entwickeln. Der Programmierer muss jedoch das Paket javax.swing importieren, um eine Swing-Anwendung zu schreiben.

Abschluss

Kurz gesagt, AWT und Swing sind zwei Toolkits zum Erstellen umfangreicher grafischer Benutzeroberflächen (GUI). Der Hauptunterschied zwischen AWT und Swing in Java besteht darin, dass AWT das ursprüngliche plattformabhängige Fenster-, Grafik- und Benutzeroberflächen-Widget-Toolkit von Java ist, während Swing ein GUI-Widget-Toolkit für Java ist, das eine Erweiterung von AWT ist.

Referenz:

1. „AWT-Übersicht.“ Www.tutorialspoint.com, hier verfügbar.2. „SWING-Übersicht.“ Www.tutorialspoint.com, hier verfügbar.3. „Schaukel (Java).“ Wikipedia, Wikimedia Foundation, 9. Juni 2018, hier verfügbar.4. „Abstraktes Fenster-Toolkit.“ Wikipedia, Wikimedia Foundation, 26. August 2018, hier verfügbar.

Bild mit freundlicher Genehmigung:

1. „Java Swings Wikibook, Event Handling, Beispiel 1 Screenshot“ Von Samwilson – Eigene Arbeit (CC BY-SA 3.0) über Commons Wikimedia

Was ist der Unterschied zwischen AWT und Swing in Java?