2010-12-05 3 views

Antwort

9

Die J identifiziert alle Swing-Komponenten.

Swing wurde früher als Java Foundation Classes vermarktet, bevor es ein integraler Bestandteil des JDK wurde.

+2

+1: Es machte auch weniger Kopfschmerzen, * beide * AWT-Klassen und Swing-Klassen in der gleichen Quelldatei zu enthalten. –

1

Es ist eine Namenskonvention für alle Swing-GUI-Komponenten: JPanel, JLabel, JTextField, JCheckBox ...

6

Joachim Sauer Antwort richtig ist. Lesen Sie weiter nur, wenn Sie einen detaillierteren Überblick über die verschiedenen Java-GUI-Ansätze und -Entwicklung benötigen.

Die erste Java-GUI hieß (ist) AWT (Abstract Window Toolkit). AWT ist ein sehr einfaches Toolkit mit begrenzten GUI-Komponenten, Layout-Managern und Ereignissen. Ein Beispiel für eine AWT-Klasse ist java.awt.Frame.

Dann wurde von Sun eine komplexere Lösung entwickelt -> JFC Swing (Java Foundation Classes, a.k.a.Swing). In Swing hat Sun ein sehr ausgereiftes, flexibles und leistungsstarkes GUI-Toolkit entwickelt. Leider bedeutet das, dass Swing Zeit braucht, um zu lernen, und es ist manchmal zu komplex für allgemeine Situationen. Swing baut auf Teilen von AWT auf. Alle Swing-Teile sind ebenfalls AWT-Teile. Swing verwendet das AWT-Ereignismodell und unterstützende Klassen wie Farben, Bilder und Grafiken. Ein Beispiel für eine Swing-Klasse ist javax.swing.JFrame. Hier sehen Sie Ihre "J", die alle Swing GUI-Komponenten vorstellt.

SWT ist ein Low-Level GUI Toolkit, vergleichbar mit AWT. JFace ist eine Sammlung erweiterter Komponenten und Utility-Services, die das Erstellen von GUIs mit SWT vereinfachen. Die Erbauer von SWT lernten von den AWT- und Swing-Implementierungen und versuchten ein System zu entwickeln, das die Vorteile beider ohne ihre Nachteile hatte. In vielerlei Hinsicht waren sie erfolgreich.

Beachten Sie, dass sowohl AWT als auch Swing Teil des J2SE-Pakets sind. Während SWT ist eine separate Third-Party-Bibliothek, die mit der Eclipse-IDE aufgewachsen ist (org.eclipse.swt).

Diese Übersicht wurde von http://www.ibm.com/developerworks/grid/library/os-swingswt übernommen. Siehe diesen Link für weitere Details.

+2

"Swing braucht Zeit zu lernen ... zu komplex" - Alle UI-Frameworks brauchen Zeit, um zu lernen; Swing ist einer der leichteren. Komplexe Nutzung ist erlaubt - aber nicht erforderlich. –

+0

Die Antwort lautet also: "J steht für Java". Wie unterscheidend ...;) – MGM

1

Alle Swing Dinger sind so benannt. JFrame, JLabel, JButton, JTextField, etc.

+2

1) Es wird das Swing-Toolkit genannt. 'swing' ist nur für den Paketnamen geeignet. 2) Die meisten Interfaces, abstrakte Klassen, Layouts, Modelle in Swing usw. haben kein Präfix 'J'. 3) obwohl die meisten ** Komponenten ** ein "J" Präfix haben, gibt es andere (wie 'CellRendererPane'), die das nicht tun. –